public class SwellManipulationRendererJ3D extends BarbManipulationRendererJ3D
enabled, pickCrawlToCursor
Constructor and Description |
---|
SwellManipulationRendererJ3D()
this DataRenderer supports direct manipulation for Tuple
representations of wind barbs; two of the Tuple's Real components
must be mapped to Flow1X and Flow1Y, or Flow2X and Flow2Y
|
Modifier and Type | Method and Description |
---|---|
void |
addPoint(float[] x)
add point for temporary rendering; intended to be
over-ridden by graphics-API-specific extensions of
DataRenderer
|
float |
checkClose(double[] origin,
double[] direction)
find minimum distance from ray to barb tail
|
void |
checkDirect()
set isDirectManipulation = true if this DataRenderer supports
direct manipulation for the MathType of its linked Data, and
for its ScalarMaps; intended to be over-ridden by extensions of
DataRenderer
|
Object |
clone() |
void |
drag_direct(VisADRay ray,
boolean first,
int mouseModifiers)
modify Data values based on direct manipulation mouse actions
|
String |
getWhyNotDirect() |
static void |
main(String[] args)
test SwellManipulationRendererJ3D
|
ShadowType |
makeShadowFunctionType(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;
|
ShadowType |
makeShadowRealTupleType(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;
|
ShadowType |
makeShadowRealType(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;
|
ShadowType |
makeShadowSetType(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;
|
ShadowType |
makeShadowTupleType(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;
|
float[] |
makeVector(boolean south,
float x,
float y,
float z,
float scale,
float pt_size,
float f0,
float f1,
float[] vx,
float[] vy,
float[] vz,
int[] numv,
float[] tx,
float[] ty,
float[] tz,
int[] numt)
draw swell, f0 and f1 in meters
|
void |
release_direct()
mouse button released, ending direct manipulation
|
void |
setSpatialValues(float[][] spatial_values)
set spatialValues from ShadowType.doTransform
|
void |
setVectorSpatialValues(float[] mbarb,
int which) |
getKnotsConvert, getNoNumbers, getNumDecPlaces, setKnotsConvert, setNoNumbers, setNumDecPlaces, stop_direct
clearScene, doTransform, isLegalTextureMap, setBranch, setLinks
clearBranch, doAction, flush, getBranch, makeShadowTextType, setBranchEarly, toggle
addException, checkAction, clearAVControls, clearExceptions, computeRanges, constrainDragPoint, 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, hasPolygonOffset, isTransformControl, prepareAction, realCheckDirect, removeLink, set_all_feasible, setDisplay, setDisplayRenderer, setEarthSpatialData, setEarthSpatialDisplay, setHasPolygonOffset, setIsDirectManipulation, setLastMouseModifiers, setLatLonIndices, setLinks, setPickCrawlToCursor, setPolygonOffset, setPolygonOffsetFactor, spatialToEarth, spatialToEarth, suppressExceptions
public SwellManipulationRendererJ3D()
public ShadowType makeShadowRealTupleType(RealTupleType type, DataDisplayLink link, ShadowType parent) throws VisADException, RemoteException
DataRenderer
makeShadowRealTupleType
in class BarbManipulationRendererJ3D
type
- FunctionType that returned ShadowType will shadowlink
- DataDisplayLink linking Data to be depictedparent
- parent in ShadowType tree structureVisADException
- a VisAD error occurredRemoteException
- an RMI error occurredpublic ShadowType makeShadowTupleType(TupleType type, DataDisplayLink link, ShadowType parent) throws VisADException, RemoteException
DataRenderer
makeShadowTupleType
in class BarbManipulationRendererJ3D
type
- FunctionType that returned ShadowType will shadowlink
- DataDisplayLink linking Data to be depictedparent
- parent in ShadowType tree structureVisADException
- a VisAD error occurredRemoteException
- an RMI error occurredpublic ShadowType makeShadowFunctionType(FunctionType type, DataDisplayLink link, ShadowType parent) throws VisADException, RemoteException
DataRenderer
makeShadowFunctionType
in class BarbManipulationRendererJ3D
type
- FunctionType that returned ShadowType will shadowlink
- DataDisplayLink linking Data to be depictedparent
- parent in ShadowType tree structureVisADException
- a VisAD error occurredRemoteException
- an RMI error occurredpublic ShadowType makeShadowRealType(RealType type, DataDisplayLink link, ShadowType parent) throws VisADException, RemoteException
DataRenderer
makeShadowRealType
in class BarbManipulationRendererJ3D
type
- FunctionType that returned ShadowType will shadowlink
- DataDisplayLink linking Data to be depictedparent
- parent in ShadowType tree structureVisADException
- a VisAD error occurredRemoteException
- an RMI error occurredpublic ShadowType makeShadowSetType(SetType type, DataDisplayLink link, ShadowType parent) throws VisADException, RemoteException
DataRenderer
makeShadowSetType
in class BarbManipulationRendererJ3D
type
- FunctionType that returned ShadowType will shadowlink
- DataDisplayLink linking Data to be depictedparent
- parent in ShadowType tree structureVisADException
- a VisAD error occurredRemoteException
- an RMI error occurredpublic String getWhyNotDirect()
getWhyNotDirect
in class BarbManipulationRendererJ3D
public void checkDirect() throws VisADException, RemoteException
DataRenderer
checkDirect
in class BarbManipulationRendererJ3D
VisADException
- a VisAD error occurredRemoteException
- an RMI error occurredpublic void addPoint(float[] x) throws VisADException
DataRenderer
addPoint
in class BarbManipulationRendererJ3D
x
- 3-D graphics coordinates of point to renderVisADException
- a VisAD error occurredpublic void setVectorSpatialValues(float[] mbarb, int which)
setVectorSpatialValues
in class BarbManipulationRendererJ3D
public void setSpatialValues(float[][] spatial_values)
setSpatialValues
in class BarbManipulationRendererJ3D
spatial_values
- float[3][number_of_points] of 3-D locations
of depiction pointspublic float checkClose(double[] origin, double[] direction)
checkClose
in class BarbManipulationRendererJ3D
origin
- 3-D origin of raydirection
- 3-D direction of raypublic void release_direct()
release_direct
in class BarbManipulationRendererJ3D
public void drag_direct(VisADRay ray, boolean first, int mouseModifiers)
DataRenderer
drag_direct
in class BarbManipulationRendererJ3D
ray
- 3-D graphics coordinates of ray corresponding to
mouse screen locationfirst
- flag if this is first call (for MouseEvent.MOUSE_PRESSED,
not for MouseEvent.MOUSE_DRAGGED)mouseModifiers
- value of InputEvent.getModifiers() from
most recent direct manipulation mouse clickpublic float[] makeVector(boolean south, float x, float y, float z, float scale, float pt_size, float f0, float f1, float[] vx, float[] vy, float[] vz, int[] numv, float[] tx, float[] ty, float[] tz, int[] numt)
makeVector
in interface BarbRenderer
makeVector
in class BarbManipulationRendererJ3D
public Object clone()
clone
in class BarbManipulationRendererJ3D
public static void main(String[] args) throws VisADException, RemoteException
VisADException
RemoteException
Copyright © 1996–2023 The SSEC Visualization Project. All rights reserved.