Re: Fast ways to draw brush outlines on a DrawingArea



There is indeed a method.

One would probably call it double buffering (anthough when you're done with
your program you might have moe like quad buffering...

The idea is to render everything in layers:

bottom layer = your image (data, etc)
above: rulers, marks, selection box, etc (semi-static stuff)
above: brush outline

these are hopefully in the order of least to most often
changing, and what is painted on top of what.

the data is held in a pixbuf
you paint that pixbuf and the selection etc into another pixbuf
you paint that pixbuf and the outline into the topmost buffer

then that pixbuf is painted onto the screen.

HTH,
Jonathan

On 9/30/07, Keith Feesh <gummybassist gmail com> wrote:

Hello, I have been developing a drawing application for quite some time
now
and I have implemented an outline system
which shows where your next drawing operation will go (just load up the
gimp, go on the paintbrush tool and select a size 11
brush if you don't quite get what I mean).

The way that I do things now includes redrawing the entire canvas every
time
the mouse is moved, in order to clear the old
outline's drawing, and then to redraw the outline once again. This brings
my
system to it's knees and I figure there must be
a better method, just I can't think of any method. Any hints would be
great.
_______________________________________________
gtk-app-devel-list mailing list
gtk-app-devel-list gnome org
http://mail.gnome.org/mailman/listinfo/gtk-app-devel-list




[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]