Documentation of 'vgp.curve.subdivision.PjSubdivisionCurve' Java class
PjSubdivisionCurve ("JavaView Reference Manual")
"JavaView? v5.03.003"
vgp.curve.subdivision

Class PjSubdivisionCurve

  • All Implemented Interfaces:
    java.io.Serializable, java.lang.Cloneable, PsTimeListenerIf, PsUpdateIf, PvPickListenerIf


    public class PjSubdivisionCurve
    extends PjProject
    Demonstrates ideas for a subdivision algorithm of curves on surfaces.
    See Also:
    Serialized Form
    Author:
    Eike Preuß, Konrad Polthier
    Version:
    15.04.06, 2.00 revised (kp) Full revision including sync with PjProject and new PgPolygonOnElementSet.
    13.01.04, 1.00 created (ep)
    • Constructor Detail

      • PjSubdivisionCurve

        public PjSubdivisionCurve()
    • Method Detail

      • init

        public void init()
        Description copied from class: PjProject
        Initialize and reset project, stops the running animation if any. Does not reset any registered display nor geometry. They must be reset individually in each subclass.
        Overrides:
        init in class PjProject
      • start

        public void start()
        Description copied from class: PjProject
        Method is invoked during loading of a project in JavaView.

        If a project has an animation object, then the animation panel is shown when the project's this start() method is invoked during loading of the project. Use setAnimation(PsAnimation) to register an animation.

        If auto fit is enabled then scenery is scaled to fit in each display.

        Overrides:
        start in class PjProject
        See Also:
        PvViewerIf.start(), PjProject.isEnabledAutoFit()
      • update

        public boolean update(java.lang.Object event)
        Description copied from class: PsObject
        Update all inspector panels, send update to all registered update listeners and finally update parent. Each of those updates has this object as event independent of the argument of this method.

        Central update method of this object. Must be overwritten if this class receives unknown events, say, from new children. Any subclass must class invoke super.update(event) on all events it does handle itself.

        Specified by:
        update in interface PsUpdateIf
        Overrides:
        update in class PsObject
        Parameters:
        event - carries a lot of information
        Returns:
        true if event has been handled, otherwise false
        See Also:
        PsObject.setParent(PsUpdateIf), PsObject.getFather(), PsObject.addUpdateListener(PsUpdateIf)
      • removeGeometry

        public void removeGeometry()
      • setGeometry

        public boolean setGeometry(PgGeometryIf geom)
        Description copied from class: PjProject
        Interface method used by subclassed project to initialize the project geometry from outside the project, for example, during initialization or loading of the project.

        This method of PjProject does nothing and must be overwritten in order to be useful. Not all projects support this method.

        Overrides:
        setGeometry in class PjProject
        Parameters:
        geom - needs to be triangulated
      • getReuseTriangleRunsWhileIterating

        public boolean getReuseTriangleRunsWhileIterating()
      • setReuseTriangleRunsWhileIterating

        public void setReuseTriangleRunsWhileIterating(boolean flag)
      • computeSubdivisionCurve

        public static PgPolygonOnElementSet computeSubdivisionCurve(PgElementSet geom,
                                                                    PiVector refElem,
                                                                    PdBary[] refBary,
                                                                    int depth,
                                                                    PgPolygonOnElementSet outpoly,
                                                                    boolean reuseTriangleStrips)
        Chaikin-Type subdivision.
        Parameters:
        geom - underlying triangulation, 2d surface in 3d
        refElem - vector of element indices for control points
        refBary - vector of barycentric coordinates for control points
        depth - num of subdivision steps
        outpoly - result, computed subdivision curve, may be null
        reuseTriangleStrips - use element strips from previous step for current step; should be true in normal case, false only for demonstration purpose
        Returns:
        subdivision curve
"JavaView? v5.03.003"

"

The software JavaView? is copyright protected. All Rights Reserved.
"

You see the box below because you did not login.