Re: GnomeCanvas3D

Le dim 20/06/2004 à 22:14, Jerry Kakol a écrit :
> Hi all,
> For quite a while already I'm thinking about that thingy mentioned in
> the subject line. Namely and object derived from gnome_canvas but with
> (x,y,z) world coordinates, "projection-type" property (parallel,
> perspective, etc.) and first of all: capable to render NURBS curves and
> surfaces.
> First question: is such thing already in the working somewhere?

No, AFAIK. There is some 3d plotting in gtk+extra (but this is based on
gtk+-1. Anyway, we'll need some 3d rendering for 3d graphs in libgoffice

> The other problem is the rendering of NURBS curves. I guess there is not
> an abundance of algorithms to choose from. The best I found so far is
> decomposition of NURBS curve into a set o Bezier segments. However, if I
> understand the documentation properly, gnome-canvas (really: libart) can
> only render curves composed of four control points using
> gnome_canvas_path_def_curveto (start point + three points supplied as
> arguments to moveto method). That leads me to the second question:
> Is it true that GnomeCanvasPathDef may contain only four control point
> bezier seqments? If so then it begs a fourth question: why? I mean is it
> universal enough? In other words: is there a way to use curveto method
> to render arbitrary defined Bezier seqments?

Look at the ArtBPath structure. It uses four points. Analog things exist
in svg and postscript (svg has also quadratic bezier curves).

> The fifth question is of more general nature. Is it a good idea in the
> first place to implement a 3D canvas for gnome? I'm asking this in the
> context of incoming wave of changes caused by future adoption of cairo
> and removing libart from its role of underlying rendering engine. By the
> way, does it mean that GnomeCanvas will be retired as well? From what I
> see cairo IS NOT a functional replacement of GnomeCanvas.

It seems that gnome libs will become deprecated. A new canvas will have
to be based on cairo if cairo does not provide all the necessary
Now, I believe that a 3d canvas for gnome is a good idea, and probably
even a necessity. May be it should be based on cairo. And may be it's
time to work on that.



Attachment: signature.asc
Description: Ceci est une partie de message =?ISO-8859-1?Q?num=E9riquement?= =?ISO-8859-1?Q?_sign=E9e?=

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