Duncan Parsons wrote:
There's GR32 as well, which now has FPC/Laz compatibility.
http://www.graphics32.org/
Overall, the best way to do that sort of thing is to have a bitmap in
memory (either loaded from a file, or drawn on application start) then
when doing what's needed copy/draw the background, then draw the
additional lines. I've done this sort of thing in realtime in audio/VST
programming, sometimes using Peter Morris's DIB controls, and sometimes
GR32. AggPas has come on since I last tried it a few years ago, and
could also be a good choice as suggested.
Just as a follow up. Rendering to a 1600x1200 screen, timing was along these
lines;
TImage.Canvas : 200ms / frame
Clear / draw all lines
AggLCLCanvas : 90ms / frame
Clear / draw all lines / copy to TImage
AggLCLCanvas was taking 30ms just to do a clear. Using a filled rectangle with the desired
background colour took only 10ms by comparison.
RGBBitmap32 : 19ms / frame
Clear / draw all lines / render to TPanel.Canvas (and update in onpaint event
as required).
For the simple stuff I'm doing (no text and just lines) LazRGBGraphics goes
like a bat out of hell.
I tried using fpimage and an fpcanvas but nothing I tried could render them to any visual component
(Not that I tried very hard after trying LazRGBGraphics - it's *fast*)
AggPas was pretty quick, and if I needed the additional fruit it'd probably be a great choice, but
for just slapping lines down on a canvas LazRGBGraphics is hard to beat.
Regards,
Brad.
--
Dolphins are so intelligent that within a few weeks they can
train Americans to stand at the edge of the pool and throw them
fish.
--
_______________________________________________
Lazarus mailing list
Lazarus@lists.lazarus.freepascal.org
http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus