visad.java3d
Class RendererJ3D
- java.lang.Object
-
- visad.DataRenderer
-
- visad.java3d.RendererJ3D
-
- All Implemented Interfaces:
- java.lang.Cloneable
- Direct Known Subclasses:
- DefaultRendererJ3D, DirectManipulationRendererJ3D
public abstract class RendererJ3D extends DataRenderer
RendererJ3D is the VisAD abstract super-class for graphics rendering algorithms under Java3D. These transform Data objects into 3-D (or 2-D) depictions in a Display window.RendererJ3D is not Serializable and should not be copied between JVMs.
-
-
Constructor Summary
Constructors Constructor and Description RendererJ3D()
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method and Description voidclearBranch()clear part of Display scene graph generated by this DataRenderervoidclearScene()clear any scene graph created by this DataRenderer, and clear all instance variablesbooleandoAction()re-transform if needed; return false if not doneabstract javax.media.j3d.BranchGroupdoTransform()create a BranchGroup scene graph for Data in links; this can put Behavior objects in the scene graph for DataRenderer classes that implement direct manipulation widgets; may reduce work by only changing scene graph for Data and Controls that have changed: 1.voidflush(javax.media.j3d.Group branch)javax.media.j3d.BranchGroupgetBranch()ShadowTypemakeShadowFunctionType(FunctionType type, DataDisplayLink link, ShadowType parent)factory method for constructing a subclass of ShadowType appropriate for the graphics API, that also adapts ShadowFunctionType; ShadowType trees are constructed that 'shadow' the MathType trees of Data to be depicted, via recursive calls to buildShadowType() methods of MathType sub-classes, to DataRenderer.makeShadow*Type() methods, to Shadow*Type constructors, then back to buildShadowType() methods; the recursive call chain is initiated by DataDisplayLink.prepareData() calls to buildShadowType() methods of MathType sub-classes;ShadowTypemakeShadowRealTupleType(RealTupleType type, DataDisplayLink link, ShadowType parent)factory for constructing a subclass of ShadowType appropriate for the graphics API, that also adapts ShadowRealTupleType; ShadowType trees are constructed that 'shadow' the MathType trees of Data to be depicted, via recursive calls to buildShadowType() methods of MathType sub-classes, to DataRenderer.makeShadow*Type() methods, to Shadow*Type constructors, then back to buildShadowType() methods; the recursive call chain is initiated by DataDisplayLink.prepareData() calls to buildShadowType() methods of MathType sub-classes;ShadowTypemakeShadowRealType(RealType type, DataDisplayLink link, ShadowType parent)factory for constructing a subclass of ShadowType appropriate for the graphics API, that also adapts ShadowRealType; ShadowType trees are constructed that 'shadow' the MathType trees of Data to be depicted, via recursive calls to buildShadowType() methods of MathType sub-classes, to DataRenderer.makeShadow*Type() methods, to Shadow*Type constructors, then back to buildShadowType() methods; the recursive call chain is initiated by DataDisplayLink.prepareData() calls to buildShadowType() methods of MathType sub-classes;ShadowTypemakeShadowSetType(SetType type, DataDisplayLink link, ShadowType parent)factory for constructing a subclass of ShadowType appropriate for the graphics API, that also adapts ShadowSetType; ShadowType trees are constructed that 'shadow' the MathType trees of Data to be depicted, via recursive calls to buildShadowType() methods of MathType sub-classes, to DataRenderer.makeShadow*Type() methods, to Shadow*Type constructors, then back to buildShadowType() methods; the recursive call chain is initiated by DataDisplayLink.prepareData() calls to buildShadowType() methods of MathType sub-classes;ShadowTypemakeShadowTextType(TextType type, DataDisplayLink link, ShadowType parent)factory for constructing a subclass of ShadowType appropriate for the graphics API, that also adapts ShadowTextType; ShadowType trees are constructed that 'shadow' the MathType trees of Data to be depicted, via recursive calls to buildShadowType() methods of MathType sub-classes, to DataRenderer.makeShadow*Type() methods, to Shadow*Type constructors, then back to buildShadowType() methods; the recursive call chain is initiated by DataDisplayLink.prepareData() calls to buildShadowType() methods of MathType sub-classes;ShadowTypemakeShadowTupleType(TupleType type, DataDisplayLink link, ShadowType parent)factory for constructing a subclass of ShadowType appropriate for the graphics API, that also adapts ShadowTupleType; ShadowType trees are constructed that 'shadow' the MathType trees of Data to be depicted, via recursive calls to buildShadowType() methods of MathType sub-classes, to DataRenderer.makeShadow*Type() methods, to Shadow*Type constructors, then back to buildShadowType() methods; the recursive call chain is initiated by DataDisplayLink.prepareData() calls to buildShadowType() methods of MathType sub-classes;voidsetBranchEarly(javax.media.j3d.BranchGroup branch)voidsetLinks(DataDisplayLink[] links, DisplayImpl d)set DataDisplayLinks for linked Data, and set associated DisplayImplvoidtoggle(boolean on)Sets the visibility of the data being rendered by this instance.-
Methods inherited from class visad.DataRenderer
addException, addPoint, checkAction, checkClose, checkDirect, clearAVControls, clearExceptions, clone, computeRanges, constrainDragPoint, drag_direct, earthToSpatial, earthToSpatial, findRayManifoldIntersection, get_all_feasible, get_any_changed, get_any_transform_control, getBadScale, getDisplay, getDisplayCoordinateSystem, getDisplayRenderer, getEarthDimension, getEarthUnits, getEnabled, getExceptionVector, getIsDirectManipulation, getLastMouseModifiers, getLatLonIndices, getLatLonRange, getLink, getLinks, getPickCrawlToCursor, getPolygonOffset, getPolygonOffsetFactor, getProjectionControlListeners, getRanges, getRealVectorTypes, getWhyNotDirect, hasPolygonOffset, isLegalTextureMap, isTransformControl, prepareAction, realCheckDirect, release_direct, removeLink, set_all_feasible, setDisplay, setDisplayRenderer, setEarthSpatialData, setEarthSpatialDisplay, setHasPolygonOffset, setIsDirectManipulation, setLastMouseModifiers, setLatLonIndices, setLinks, setPickCrawlToCursor, setPolygonOffset, setPolygonOffsetFactor, setSpatialValues, spatialToEarth, spatialToEarth, stop_direct, suppressExceptions
-
-
-
-
Method Detail
-
setLinks
public void setLinks(DataDisplayLink[] links, DisplayImpl d) throws VisADException
Description copied from class:DataRendererset DataDisplayLinks for linked Data, and set associated DisplayImpl- Specified by:
setLinksin classDataRenderer- Parameters:
links- array of DataDisplayLinks to setd- associated DisplayImpl to set- Throws:
VisADException- a VisAD error occurred
-
toggle
public void toggle(boolean on)
Description copied from class:DataRendererSets the visibility of the data being rendered by this instance.- Overrides:
togglein classDataRenderer- Parameters:
on- Whether or not to render the data.
-
makeShadowFunctionType
public ShadowType makeShadowFunctionType(FunctionType type, DataDisplayLink link, ShadowType parent) throws VisADException, java.rmi.RemoteException
Description copied from class:DataRendererfactory method for constructing a subclass of ShadowType appropriate for the graphics API, that also adapts ShadowFunctionType; ShadowType trees are constructed that 'shadow' the MathType trees of Data to be depicted, via recursive calls to buildShadowType() methods of MathType sub-classes, to DataRenderer.makeShadow*Type() methods, to Shadow*Type constructors, then back to buildShadowType() methods; the recursive call chain is initiated by DataDisplayLink.prepareData() calls to buildShadowType() methods of MathType sub-classes;- Specified by:
makeShadowFunctionTypein classDataRenderer- Parameters:
type- FunctionType that returned ShadowType will shadowlink- DataDisplayLink linking Data to be depictedparent- parent in ShadowType tree structure- Returns:
- constructed ShadowType
- Throws:
VisADException- a VisAD error occurredjava.rmi.RemoteException- an RMI error occurred
-
makeShadowRealTupleType
public ShadowType makeShadowRealTupleType(RealTupleType type, DataDisplayLink link, ShadowType parent) throws VisADException, java.rmi.RemoteException
Description copied from class:DataRendererfactory for constructing a subclass of ShadowType appropriate for the graphics API, that also adapts ShadowRealTupleType; ShadowType trees are constructed that 'shadow' the MathType trees of Data to be depicted, via recursive calls to buildShadowType() methods of MathType sub-classes, to DataRenderer.makeShadow*Type() methods, to Shadow*Type constructors, then back to buildShadowType() methods; the recursive call chain is initiated by DataDisplayLink.prepareData() calls to buildShadowType() methods of MathType sub-classes;- Specified by:
makeShadowRealTupleTypein classDataRenderer- Parameters:
type- FunctionType that returned ShadowType will shadowlink- DataDisplayLink linking Data to be depictedparent- parent in ShadowType tree structure- Returns:
- constructed ShadowType
- Throws:
VisADException- a VisAD error occurredjava.rmi.RemoteException- an RMI error occurred
-
makeShadowRealType
public ShadowType makeShadowRealType(RealType type, DataDisplayLink link, ShadowType parent) throws VisADException, java.rmi.RemoteException
Description copied from class:DataRendererfactory for constructing a subclass of ShadowType appropriate for the graphics API, that also adapts ShadowRealType; ShadowType trees are constructed that 'shadow' the MathType trees of Data to be depicted, via recursive calls to buildShadowType() methods of MathType sub-classes, to DataRenderer.makeShadow*Type() methods, to Shadow*Type constructors, then back to buildShadowType() methods; the recursive call chain is initiated by DataDisplayLink.prepareData() calls to buildShadowType() methods of MathType sub-classes;- Specified by:
makeShadowRealTypein classDataRenderer- Parameters:
type- FunctionType that returned ShadowType will shadowlink- DataDisplayLink linking Data to be depictedparent- parent in ShadowType tree structure- Returns:
- constructed ShadowType
- Throws:
VisADException- a VisAD error occurredjava.rmi.RemoteException- an RMI error occurred
-
makeShadowSetType
public ShadowType makeShadowSetType(SetType type, DataDisplayLink link, ShadowType parent) throws VisADException, java.rmi.RemoteException
Description copied from class:DataRendererfactory for constructing a subclass of ShadowType appropriate for the graphics API, that also adapts ShadowSetType; ShadowType trees are constructed that 'shadow' the MathType trees of Data to be depicted, via recursive calls to buildShadowType() methods of MathType sub-classes, to DataRenderer.makeShadow*Type() methods, to Shadow*Type constructors, then back to buildShadowType() methods; the recursive call chain is initiated by DataDisplayLink.prepareData() calls to buildShadowType() methods of MathType sub-classes;- Specified by:
makeShadowSetTypein classDataRenderer- Parameters:
type- FunctionType that returned ShadowType will shadowlink- DataDisplayLink linking Data to be depictedparent- parent in ShadowType tree structure- Returns:
- constructed ShadowType
- Throws:
VisADException- a VisAD error occurredjava.rmi.RemoteException- an RMI error occurred
-
makeShadowTextType
public ShadowType makeShadowTextType(TextType type, DataDisplayLink link, ShadowType parent) throws VisADException, java.rmi.RemoteException
Description copied from class:DataRendererfactory for constructing a subclass of ShadowType appropriate for the graphics API, that also adapts ShadowTextType; ShadowType trees are constructed that 'shadow' the MathType trees of Data to be depicted, via recursive calls to buildShadowType() methods of MathType sub-classes, to DataRenderer.makeShadow*Type() methods, to Shadow*Type constructors, then back to buildShadowType() methods; the recursive call chain is initiated by DataDisplayLink.prepareData() calls to buildShadowType() methods of MathType sub-classes;- Specified by:
makeShadowTextTypein classDataRenderer- Parameters:
type- FunctionType that returned ShadowType will shadowlink- DataDisplayLink linking Data to be depictedparent- parent in ShadowType tree structure- Returns:
- constructed ShadowType
- Throws:
VisADException- a VisAD error occurredjava.rmi.RemoteException- an RMI error occurred
-
makeShadowTupleType
public ShadowType makeShadowTupleType(TupleType type, DataDisplayLink link, ShadowType parent) throws VisADException, java.rmi.RemoteException
Description copied from class:DataRendererfactory for constructing a subclass of ShadowType appropriate for the graphics API, that also adapts ShadowTupleType; ShadowType trees are constructed that 'shadow' the MathType trees of Data to be depicted, via recursive calls to buildShadowType() methods of MathType sub-classes, to DataRenderer.makeShadow*Type() methods, to Shadow*Type constructors, then back to buildShadowType() methods; the recursive call chain is initiated by DataDisplayLink.prepareData() calls to buildShadowType() methods of MathType sub-classes;- Specified by:
makeShadowTupleTypein classDataRenderer- Parameters:
type- FunctionType that returned ShadowType will shadowlink- DataDisplayLink linking Data to be depictedparent- parent in ShadowType tree structure- Returns:
- constructed ShadowType
- Throws:
VisADException- a VisAD error occurredjava.rmi.RemoteException- an RMI error occurred
-
doAction
public boolean doAction() throws VisADException, java.rmi.RemoteExceptionre-transform if needed; return false if not done- Specified by:
doActionin classDataRenderer- Returns:
- flag indicating if the transform was done successfully
- Throws:
VisADException- a VisAD error occurredjava.rmi.RemoteException- an RMI error occurred
-
getBranch
public javax.media.j3d.BranchGroup getBranch()
-
setBranchEarly
public void setBranchEarly(javax.media.j3d.BranchGroup branch)
-
clearBranch
public void clearBranch()
Description copied from class:DataRendererclear part of Display scene graph generated by this DataRenderer- Specified by:
clearBranchin classDataRenderer
-
flush
public void flush(javax.media.j3d.Group branch)
-
clearScene
public void clearScene()
Description copied from class:DataRendererclear any scene graph created by this DataRenderer, and clear all instance variables- Overrides:
clearScenein classDataRenderer
-
doTransform
public abstract javax.media.j3d.BranchGroup doTransform() throws VisADException, java.rmi.RemoteExceptioncreate a BranchGroup scene graph for Data in links; this can put Behavior objects in the scene graph for DataRenderer classes that implement direct manipulation widgets; may reduce work by only changing scene graph for Data and Controls that have changed: 1. use boolean[] changed to determine which Data objects have changed 2. if Data has not changed, then use Control.checkTicks loop like in prepareAction to determine which Control-s have changed- Throws:
VisADExceptionjava.rmi.RemoteException
-
-
DMelt 3.0 © DataMelt by jWork.ORG