Package edu.wisc.ssec.mcidasv.data.hydra
Class MyRubberBandBoxRendererJ3D
java.lang.Object
visad.DataRenderer
visad.java3d.RendererJ3D
visad.java3d.DirectManipulationRendererJ3D
edu.wisc.ssec.mcidasv.data.hydra.MyRubberBandBoxRendererJ3D
- All Implemented Interfaces:
Cloneable
RubberBandBoxRendererJ3D is the VisAD class for direct
manipulation of rubber band boxes
-
Field Summary
FieldsModifier and TypeFieldDescriptionbooleanprivate byteprivate javax.media.j3d.BranchGroupprivate float[][]private floatprivate float[](package private) float[]private static final intbooleanprivate static final floatprivate float[]arrays of length one for inverseScaleValuesprivate float[][]private byteprivate javax.media.j3d.BranchGroupprivate booleanprivate javax.media.j3d.Appearanceprivate javax.media.j3d.GeometryArrayprivate javax.media.j3d.BranchGroupprivate float[][]private DataDisplayLinkfor use in drag_directprivate static final org.slf4j.Loggerprivate intprivate intprivate intprivate floatprivate byteprivate DataReferenceprivate booleanprivate DisplayTupleTypespatial DisplayTupleType other than DisplaySpatialCartesianTupleprivate CoordinateSystemprivate Stringexplanation for invalid use of DirectManipulationRendererprivate RealTypeprivate static final Stringpossible values for whyNotDirectprivate static final Stringprivate intprivate ScalarMapprivate RealTupleTypeprivate RealTypeprivate intprivate ScalarMapFields inherited from class visad.java3d.RendererJ3D
renderOrderPriorityFields inherited from class visad.DataRenderer
pickCrawlToCursor -
Constructor Summary
ConstructorsConstructorDescriptionMyRubberBandBoxRendererJ3D(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 ScalarMapsMyRubberBandBoxRendererJ3D(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) -
Method Summary
Modifier and TypeMethodDescriptionvoidaddPoint(float[] x) floatcheckClose(double[] origin, double[] direction) check if ray intersects sub-manifoldvoidclone()javax.media.j3d.BranchGroupdon't render - just return BranchGroup for scene graph to render rectangle intovoiddrag_direct(VisADRay ray, boolean first, int mouseModifiers) javax.media.j3d.BranchGroupvoidmouse button released, ending direct manipulationvoidvoidsetKeepLastBoxOn(boolean keep) voidvoidsetLastBox(javax.media.j3d.BranchGroup box_bg) voidsetSpatialValues(float[][] spatial_values) set spatialValues from ShadowType.doTransformvoidMethods inherited from class visad.java3d.DirectManipulationRendererJ3D
clearScene, isLegalTextureMap, setBranch, setLinksMethods inherited from class visad.java3d.RendererJ3D
clearBranch, doAction, flush, getBranch, getOrderedGroupIndex, getRenderOrderPriority, makeShadowFunctionType, makeShadowRealTupleType, makeShadowRealType, makeShadowSetType, makeShadowTextType, makeShadowTupleType, setBranchEarly, toggleMethods inherited from class visad.DataRenderer
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
-
Field Details
-
logger
-
x
-
y
-
xy
-
mouseModifiersMask
-
mouseModifiersValue
-
branch
-
group
-
keep_last_box
-
last_group
-
last_geometry
-
last_appearance
-
last_box
-
enabled
-
active
-
link
for use in drag_direct -
ref
-
xmap
-
ymap
-
default_values
float[] default_values -
f
arrays of length one for inverseScaleValues -
d
-
whyNotDirect
explanation for invalid use of DirectManipulationRenderer -
tuple
spatial DisplayTupleType other than DisplaySpatialCartesianTuple -
tuplecs
-
xindex
-
yindex
-
otherindex
-
othervalue
-
red
-
green
-
blue
-
first_x
-
last_x
-
clast_x
-
cum_lon
-
xandyNotMatch
possible values for whyNotDirect- See Also:
-
xandyNotSpatial
- See Also:
-
stop
-
EDGE
- See Also:
-
EPS
- See Also:
-
-
Constructor Details
-
MyRubberBandBoxRendererJ3D
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
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)
-
-
Method Details
-
doTransform
don't render - just return BranchGroup for scene graph to render rectangle into- Overrides:
doTransformin classDirectManipulationRendererJ3D- Throws:
VisADExceptionRemoteException
-
checkDirect
- Overrides:
checkDirectin classDirectManipulationRendererJ3D- Throws:
VisADExceptionRemoteException
-
getWhyNotDirect
- Overrides:
getWhyNotDirectin classDataRenderer
-
addPoint
- Overrides:
addPointin classDirectManipulationRendererJ3D- Throws:
VisADException
-
getDisplayCoordinateSystem
- Overrides:
getDisplayCoordinateSystemin classDataRenderer
-
setSpatialValues
set spatialValues from ShadowType.doTransform- Overrides:
setSpatialValuesin classDataRenderer
-
checkClose
check if ray intersects sub-manifold- Overrides:
checkClosein classDataRenderer
-
release_direct
mouse button released, ending direct manipulation- Overrides:
release_directin classDataRenderer
-
stop_direct
- Overrides:
stop_directin classDataRenderer
-
drag_direct
- Overrides:
drag_directin classDataRenderer
-
clone
- Overrides:
clonein classDirectManipulationRendererJ3D
-
setKeepLastBoxOn
-
removeLastBox
-
getLastBox
-
setLastBox
-
setLastBox
-