gzz-dev
[Top][All Lists]
Advanced

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

Re: [Gzz] PEG vobcoorder_culling--humppake


From: Tuomas Lukka
Subject: Re: [Gzz] PEG vobcoorder_culling--humppake
Date: Mon, 11 Nov 2002 19:43:02 +0200
User-agent: Mutt/1.4i

> 
> Into ``gzz.vob.VobCoorder`` add::
>       /** Creates a CullingCoordSys with distinct parent and test
>        * coordinate systems. The CullingCoordSys works mainly as its
>        * parent CoordSys. 

This needs to be made more exact: does it duplicate the box? (it probably
should). In what ways does it NOT work like its parent

>  Although, it will be drawn always when boxes
>        * of its test and clip coordinate systems do intersect. When
>        * the boxes don't intersect, the CullingCoordSys should not be
>          * drawn.

This needs some rephrasing.

        This coordsys will not necessarily be drawn if the boxes of the test  
        and clip coordinate systems do not intersect. However, this is not 
        guaranteed; the only thing guaranteed is that if the boxes of the test
        and clip coordinate systems *do* intersect, the CullingCoordsys will
        be drawn.


>        * @param parent ID of the coordinate system which points which
>          *               points will be transformed, if CullingCoordSys is
>          *               shown

"which points which points"?

>        * @param test ID of the coordinate system which box is tested
>          *        against the clip coordinate system.

"which box" -> whose box

>        * @param clip ID of the coordinate system which box is tested
>          *             against the test coordinate system.
>        */
>       public int cull(int parent, int test, int clip) {
>       }
>       /** Creates a CullingCoordSys using the parent also as the test
>        * coordinate system. In practise, this could be only a shorthand,

In practice...  need not be mentioned; that's an implementation detail.

>        * which returns a call cull(parent, parent, clip).
>        */
>       public int cull(int parent, int clip) {
>       }


You can also put into the PEG the trivial default implementation (it should 
be in VobCoorder, methinks)
        
>       public int cull(int parent, int clip) {
                return cull(parent, parent, clip);
>       }



> After changing ``gzz.vob.VobCoorder`` these methods should also
> be implemented in all implementing classes, which inherit
> ``gzz.vob.VobCoorder``. Because culling is already implemented in
> ``gzz.gfx.gl.GLVobCoorder``, currently classes left seem to be:
>
>  * ``gzz.vob.impl.OrthoCoorder``
> 
>   **NOTE:** ``CullingCoordsys`` is currently implemented only on the
>   C++ side, but ``OrthoCoorder`` is not allowed to use JNI. *Dummy*
>   ``CullingCoordSys`` can be implented on the Java side as
>   ``translate(parent, 0, 0)``.~

These are all implementation details and do not really belong in this PEG.

HMMM... maybe we should have four separate PEG tracks:

        META
        ARCHITECTURE
        INTERFACES
        IMPLEMENTATION

with separate tables on the pegboard?

        Tuomas




reply via email to

[Prev in Thread] Current Thread [Next in Thread]