public class MyRubberBandBoxRendererJ3D extends DirectManipulationRendererJ3D
Modifier and Type | Field and Description |
---|---|
boolean |
active |
private byte |
blue |
private javax.media.j3d.BranchGroup |
branch |
private float[][] |
clast_x |
private float |
cum_lon |
private float[] |
d |
(package private) float[] |
default_values |
private static int |
EDGE |
boolean |
enabled |
private static float |
EPS |
private float[] |
f
arrays of length one for inverseScaleValues
|
private float[][] |
first_x |
private byte |
green |
private javax.media.j3d.BranchGroup |
group |
private boolean |
keep_last_box |
private javax.media.j3d.Appearance |
last_appearance |
Gridded3DSet |
last_box |
private javax.media.j3d.GeometryArray |
last_geometry |
private javax.media.j3d.BranchGroup |
last_group |
private float[][] |
last_x |
private DataDisplayLink |
link
for use in drag_direct
|
private int |
mouseModifiersMask |
private int |
mouseModifiersValue |
private int |
otherindex |
private float |
othervalue |
private byte |
red |
private DataReference |
ref |
private boolean |
stop |
private DisplayTupleType |
tuple
spatial DisplayTupleType other than
DisplaySpatialCartesianTuple
|
private CoordinateSystem |
tuplecs |
private java.lang.String |
whyNotDirect
explanation for invalid use of DirectManipulationRenderer
|
private RealType |
x |
private static java.lang.String |
xandyNotMatch
possible values for whyNotDirect
|
private static java.lang.String |
xandyNotSpatial |
private int |
xindex |
private ScalarMap |
xmap |
private RealTupleType |
xy |
private RealType |
y |
private int |
yindex |
private ScalarMap |
ymap |
pickCrawlToCursor
Constructor and Description |
---|
MyRubberBandBoxRendererJ3D(RealType xarg,
RealType yarg)
this DirectManipulationRenderer is quite different - it does not
render its data, but only place values into its DataReference
on right mouse button release;
it uses xarg and yarg to determine spatial ScalarMaps
|
MyRubberBandBoxRendererJ3D(RealType xarg,
RealType yarg,
int mmm,
int mmv)
xarg and yarg determine spatial ScalarMaps;
mmm and mmv determine whehter SHIFT or CTRL keys are required -
this is needed since this is a greedy DirectManipulationRenderer
that will grab any right mouse click (that intersects its 2-D
sub-manifold)
|
Modifier and Type | Method and Description |
---|---|
void |
addPoint(float[] x) |
float |
checkClose(double[] origin,
double[] direction)
check if ray intersects sub-manifold
|
void |
checkDirect() |
java.lang.Object |
clone() |
javax.media.j3d.BranchGroup |
doTransform()
don't render - just return BranchGroup for scene graph to
render rectangle into
|
void |
drag_direct(VisADRay ray,
boolean first,
int mouseModifiers) |
CoordinateSystem |
getDisplayCoordinateSystem() |
javax.media.j3d.BranchGroup |
getLastBox() |
java.lang.String |
getWhyNotDirect() |
void |
release_direct()
mouse button released, ending direct manipulation
|
void |
removeLastBox() |
void |
setKeepLastBoxOn(boolean keep) |
void |
setLastBox(javax.media.j3d.BranchGroup box_bg) |
void |
setLastBox(MyRubberBandBoxRendererJ3D rbbr) |
void |
setSpatialValues(float[][] spatial_values)
set spatialValues from ShadowType.doTransform
|
void |
stop_direct() |
clearScene, isLegalTextureMap, setBranch, setLinks
clearBranch, doAction, flush, getBranch, makeShadowFunctionType, makeShadowRealTupleType, makeShadowRealType, makeShadowSetType, makeShadowTextType, makeShadowTupleType, setBranchEarly, toggle
addException, checkAction, clearAVControls, clearExceptions, computeRanges, constrainDragPoint, earthToSpatial, earthToSpatial, findRayManifoldIntersection, get_all_feasible, get_any_changed, get_any_transform_control, getBadScale, getDisplay, 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
private RealTupleType xy
private int mouseModifiersMask
private int mouseModifiersValue
private javax.media.j3d.BranchGroup branch
private javax.media.j3d.BranchGroup group
private boolean keep_last_box
private javax.media.j3d.BranchGroup last_group
private javax.media.j3d.GeometryArray last_geometry
private javax.media.j3d.Appearance last_appearance
public Gridded3DSet last_box
public boolean enabled
public boolean active
private transient DataDisplayLink link
private transient DataReference ref
float[] default_values
private float[] f
private float[] d
private java.lang.String whyNotDirect
private DisplayTupleType tuple
private CoordinateSystem tuplecs
private int xindex
private int yindex
private int otherindex
private float othervalue
private byte red
private byte green
private byte blue
private float[][] first_x
private float[][] last_x
private float[][] clast_x
private float cum_lon
private static final java.lang.String xandyNotMatch
private static final java.lang.String xandyNotSpatial
private boolean stop
private static final int EDGE
private static final float EPS
public MyRubberBandBoxRendererJ3D(RealType xarg, RealType yarg)
public MyRubberBandBoxRendererJ3D(RealType xarg, RealType yarg, int mmm, int mmv)
public javax.media.j3d.BranchGroup doTransform() throws VisADException, java.rmi.RemoteException
doTransform
in class DirectManipulationRendererJ3D
VisADException
java.rmi.RemoteException
public void checkDirect() throws VisADException, java.rmi.RemoteException
checkDirect
in class DirectManipulationRendererJ3D
VisADException
java.rmi.RemoteException
public java.lang.String getWhyNotDirect()
getWhyNotDirect
in class DataRenderer
public void addPoint(float[] x) throws VisADException
addPoint
in class DirectManipulationRendererJ3D
VisADException
public CoordinateSystem getDisplayCoordinateSystem()
getDisplayCoordinateSystem
in class DataRenderer
public void setSpatialValues(float[][] spatial_values)
setSpatialValues
in class DataRenderer
public float checkClose(double[] origin, double[] direction)
checkClose
in class DataRenderer
public void release_direct()
release_direct
in class DataRenderer
public void stop_direct()
stop_direct
in class DataRenderer
public void drag_direct(VisADRay ray, boolean first, int mouseModifiers)
drag_direct
in class DataRenderer
public java.lang.Object clone()
clone
in class DirectManipulationRendererJ3D
public void setKeepLastBoxOn(boolean keep)
public void removeLastBox()
public javax.media.j3d.BranchGroup getLastBox()
public void setLastBox(javax.media.j3d.BranchGroup box_bg)
public void setLastBox(MyRubberBandBoxRendererJ3D rbbr)