Re: guppi coor system



It's been rumoured that Rob Browning said:
> Unless you have access to lower levels of the graphics API than we
> have with, say, GTK (unless it's been updated since I last looked
> carefully), you can't apply all the transformations you're talking
> about to some of the graphics primitives.  Fonts and ellipses are
> glaring example of this.  In these cases, you just don't have access
> to the vertices.  So unless you're going to write your own
> circle/ellipse/whatever algorithms (which for everything but fonts
> isn't that hard, and some I've done before), you may not have a ready
> way to integrate these things into your transformation engine.

If the native-elipse routine is broken, then don't use it.
Font scaling is *always* a problem.  There are a variety of commonly
accepted fixes.

> As an alternate example, to get a transformation matrix rotated
> ellipse using gdk, you can't use their gdk_draw_arc call.  You'll have

To the extent that gdk doesn't have transform matrices in it, then I'll 
just claim its brain-dead.   Apoplectically, even. I know I'm sounding 
militant, but this is drawing-101.  *Every* beginners book deals with this. 

Actually, I just looked at gdk. I looks like a thin wrapper over X11. 
So thin that it makes me wonder why they bothered.... Win95
portability??   But anyway, its well known that X11 has a fundamentally 
broken drawing model. For various political reasons, this has been 
unfixable over the last decade, despite voluminous discussion.  But now, 
with Linux wining, this might change.  There are some nascent efforts 
underway to fix this. 

> to write your own ellipse routine in terms of gdk_draw_lines, and for
> a truly smooth ellipse, in areas of high curvature, you'll end up

Bresenham algorithm.  Its harder for elipses than lines but its doable.
Anyway gdk doesn't have elipses.

> So the question becomes, "how much of this transformation stuff is
> worth worrying about right now?"  

All of it.

> If it's easy to implement what we

Its easy to implement.  Its an afternoon or two.

> need using that model without having a lot of gdk-interaction

gdk is a thin wrapper on Xlib, and basically, you want to mostly avoid
using X11 drawing primitives, for obvious reasons.

> (and apologies for the previous red-herring.)

I'd like to hear Jon weigh in, and I guess I am very sorry that his
first exposure here is to such a contentious and volatile discussion.
Jon, my apologies for coming on like a tornado.

--linas




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