[Lazarus] Recent Graphics changes...
wile64
wile64 at gmail.com
Tue Jul 8 18:00:26 CEST 2008
2008/7/8 Marc Weustink <marc.weustink at cuperus.nl>:
> wile64 wrote:
> > Hi,
> >
> > I turn quickly,
> >
> > I load images like this, (size 8192x8192)
> >
> > var
> > BmpMap: TBitmap;
> > Image1: TImage;
> >
> > Begin
> > BmpMap.Width: = Map.width * Tiles.Width;
> > BmpMap.Height: = Map.height * Tiles.Height;
> > MapImage: = BmpMap.CreateIntfImage;
> > / / ... image processing
> > BmpMap.LoadFromIntfImage (MapImage);
> > Image1.Picture.Bitmap.Assign (BmpMap);
> > end;
> >
> > 1) Since the last change LoadFromIntfImage takes +/- 11 seconds, before
> > 1 second.
> > 2) The TImage is in a ScrollBox, the image disappears (1seconde) when I
> > scroll.
> >
> > Is this a problem or should be done differently now?
>
> There isn't much changed in LoadFromIntImage, but I need to lookup if
> the internal rawimage is shared correctly. In the worst case a pixelcopy
> is made, which is not necesary in this case.
>
For info: I use always last SVN on XP SP2 AMD 2500+ 1Go memory
On linux my other PC is very more speed and I see one small change
>
> one little optimalisation is setting the size like:
>
> BmpMap.SetSize(Map.width * Tiles.Width, Map.height * Tiles.Height);
Thanks for this,
>
> Another optimalisation would be creating the RawImage directly and not
> through a bitmap.
>
Impossible, if the image is too big there is a mistake ( Failed to create
handles )
MapImage:= TLazIntfImage.Create(Map.width * Tiles.Width, Map.height *
Tiles.Height);
--
Laurent.
"If debugging is the art of removing bugs, then programming must be the art
of creating!"
My Components: http://wiki.lazarus.freepascal.org/Wile64
French Forum : http://lazforum-fr.tuxfamily.org/index.php
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.lazarus-ide.org/pipermail/lazarus/attachments/20080708/212a9be9/attachment-0007.html>
More information about the Lazarus
mailing list