Class RigidShapeEditor
- java.lang.Object
-
- gov.nasa.worldwind.avlist.AVListImpl
-
- gov.nasa.worldwind.WWObjectImpl
-
- gov.nasa.worldwind.layers.AbstractLayer
-
- gov.nasa.worldwindx.examples.shapebuilder.AbstractShapeEditor
-
- gov.nasa.worldwindx.examples.shapebuilder.RigidShapeEditor
-
- All Implemented Interfaces:
AVList,Disposable,MessageListener,Layer,Restorable,WWObject,java.awt.event.MouseListener,java.awt.event.MouseMotionListener,java.beans.PropertyChangeListener,java.util.EventListener
- Direct Known Subclasses:
BoxEditor,ConeEditor,CylinderEditor,PyramidEditor,WedgeEditor
public class RigidShapeEditor extends AbstractShapeEditor
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description protected static classRigidShapeEditor.ControlPointMarkerstatic classRigidShapeEditor.Direction
-
Field Summary
-
Fields inherited from class gov.nasa.worldwindx.examples.shapebuilder.AbstractShapeEditor
aboveGround, ACCUMULATED_LABEL, activeAction, ALTITUDE_LABEL, altitudeMode, ANGLE_LABEL, annotation, annotationAttributes, AREA_LABEL, armed, CENTER_ALTITUDE_LABEL, CENTER_LATITUDE_LABEL, CENTER_LONGITUDE_LABEL, EAST_SKEW_LABEL, editMode, frameTimestamp, HEADING_LABEL, HEIGHT_LABEL, LATITUDE_LABEL, LENGTH_LABEL, LONGITUDE_LABEL, MAJOR_AXIS_LABEL, MINOR_AXIS_LABEL, mousePoint, NORTH_SKEW_LABEL, PERIMETER_LABEL, RADIUS_LABEL, ROLL_LABEL, showAnnotation, TILT_LABEL, unitsFormat, WIDTH_LABEL, wwd
-
-
Constructor Summary
Constructors Constructor Description RigidShapeEditor()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected voidaddVertex(java.awt.Point mousePoint)Add a vertex to the polygon's outer boundary.protected voidassembleControlPointAttributes()protected voidassembleControlPoints(DrawContext dc)protected voidassembleRotationControlPoints(DrawContext dc)protected voidassembleScaleControlPoints(DrawContext dc)protected voidassembleSkewControlPoints(DrawContext dc)protected voidassembleTextureControlPoints(DrawContext dc)protected voidassembleTranslationControlPoints(DrawContext dc)protected voidassembleVertexControlPoints(DrawContext dc)protected voidchangeShapeHeading(java.awt.Point previousMousePoint, java.awt.Point mousePoint)protected voidchangeShapeRoll(java.awt.Point previousMousePoint, java.awt.Point mousePoint)protected voidchangeShapeTilt(java.awt.Point previousMousePoint, java.awt.Point mousePoint)protected Vec4computeAnnotationPosition(Position pos)protected voiddoPick(DrawContext dc, java.awt.Point point)protected voiddoRender(DrawContext dc)protected java.lang.StringformatMeasurements(Position pos)protected java.lang.StringgetDisplayString(Position pos)java.lang.StringgetEditMode()intgetSelectedFace()RigidShapegetShape()protected Vec4intersectPolygonAltitudeAt(Line ray)Determine the point at which a ray intersects a the globe at the elevation of the polygon.voidmouseClicked(java.awt.event.MouseEvent e)voidmouseDragged(java.awt.event.MouseEvent e)voidmouseEntered(java.awt.event.MouseEvent e)voidmouseExited(java.awt.event.MouseEvent e)voidmouseMoved(java.awt.event.MouseEvent e)voidmousePressed(java.awt.event.MouseEvent e)voidmouseReleased(java.awt.event.MouseEvent e)protected voidmoveControlPoint(RigidShapeEditor.ControlPointMarker controlPoint, java.awt.Point moveToPoint)protected voidmoveShape(java.awt.Point previousMousePoint, java.awt.Point mousePoint)protected voidmoveShapeLatitude(java.awt.Point previousMousePoint, java.awt.Point mousePoint)protected voidmoveShapeLongitude(java.awt.Point previousMousePoint, java.awt.Point mousePoint)protected voidmoveTexture(java.awt.Point previousMousePoint, java.awt.Point mousePoint)protected voidmoveTextureCorner(java.awt.Point previousMousePoint, java.awt.Point mousePoint, java.lang.Integer corner)protected voidremoveVertex(RigidShapeEditor.ControlPointMarker vertexToRemove)Remove a vertex from the polygon.protected voidscaleShape(java.awt.Point previousMousePoint, java.awt.Point mousePoint)protected voidscaleShapeAngle(java.awt.Point previousMousePoint, java.awt.Point mousePoint)protected voidscaleShapeDown(java.awt.Point previousMousePoint, java.awt.Point mousePoint)protected voidscaleShapeEast(java.awt.Point previousMousePoint, java.awt.Point mousePoint)protected voidscaleShapeEastWest(java.awt.Point previousMousePoint, java.awt.Point mousePoint)protected voidscaleShapeNorth(java.awt.Point previousMousePoint, java.awt.Point mousePoint)protected voidscaleShapeNortheast(java.awt.Point previousMousePoint, java.awt.Point mousePoint)protected voidscaleShapeNorthSouth(java.awt.Point previousMousePoint, java.awt.Point mousePoint)protected voidscaleShapeRadius(java.awt.Point previousMousePoint, java.awt.Point mousePoint)protected voidscaleShapeSouth(java.awt.Point previousMousePoint, java.awt.Point mousePoint)protected voidscaleShapeSouthwest(java.awt.Point previousMousePoint, java.awt.Point mousePoint)protected voidscaleShapeUp(java.awt.Point previousMousePoint, java.awt.Point mousePoint)protected voidscaleShapeVertical(java.awt.Point previousMousePoint, java.awt.Point mousePoint)protected voidscaleShapeWest(java.awt.Point previousMousePoint, java.awt.Point mousePoint)protected voidscaleTexture(java.awt.Point previousMousePoint, java.awt.Point mousePoint, RigidShapeEditor.Direction side)voidsetEditMode(java.lang.String editMode)voidsetSelectedFace(int selectedFace)voidsetShape(AbstractShape shape)protected voidsetShapeHeight(java.awt.Point previousMousePoint, java.awt.Point mousePoint)protected voidskewShape(java.awt.Point previousMousePoint, java.awt.Point mousePoint)protected voidskewShapeEastWest(java.awt.Point previousMousePoint, java.awt.Point mousePoint)protected voidskewShapeNorthSouth(java.awt.Point previousMousePoint, java.awt.Point mousePoint)protected voidtextureShape(java.awt.Point previousMousePoint, java.awt.Point mousePoint)voidupdateAnnotation(Position pos)-
Methods inherited from class gov.nasa.worldwindx.examples.shapebuilder.AbstractShapeEditor
arePositionsRedundant, getAltitudeMode, getAnnotationAttributes, getLabel, getWorldWindow, initializeAnnotation, isAboveGround, isArmed, isShowAnnotation, setAboveGround, setAltitudeMode, setAnnotationAttributes, setArmed, setInitialLabels, setLabel, setShowAnnotation, setWorldWindow
-
Methods inherited from class gov.nasa.worldwind.layers.AbstractLayer
createLayerConfigElements, dispose, doPreRender, getDataFileStore, getExpiryTime, getLayerConfigParams, getMaxActiveAltitude, getMaxEffectiveAltitude, getMinActiveAltitude, getMinEffectiveAltitude, getName, getOpacity, getRestorableState, getScale, getScreenCredit, isAtMaxResolution, isEnabled, isLayerActive, isLayerConfigDocument, isLayerInView, isMultiResolution, isNetworkRetrievalEnabled, isPickEnabled, pick, preRender, render, restoreState, setDataFileStore, setEnabled, setExpiryTime, setMaxActiveAltitude, setMinActiveAltitude, setName, setNetworkRetrievalEnabled, setOpacity, setPickEnabled, setScreenCredit, toString
-
Methods inherited from class gov.nasa.worldwind.WWObjectImpl
onMessage, propertyChange
-
Methods inherited from class gov.nasa.worldwind.avlist.AVListImpl
addPropertyChangeListener, addPropertyChangeListener, clearList, copy, firePropertyChange, firePropertyChange, getBooleanValue, getBooleanValue, getChangeSupport, getDoubleValue, getDoubleValue, getEntries, getIntegerValue, getIntegerValue, getLongValue, getLongValue, getRestorableStateForAVPair, getStringValue, getStringValue, getStringValue, getValue, getValues, hasKey, removeKey, removePropertyChangeListener, removePropertyChangeListener, setValue, setValues
-
Methods inherited from class java.lang.Object
clone, equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface gov.nasa.worldwind.avlist.AVList
addPropertyChangeListener, addPropertyChangeListener, clearList, copy, firePropertyChange, firePropertyChange, getEntries, getStringValue, getValue, getValues, hasKey, removeKey, removePropertyChangeListener, removePropertyChangeListener, setValue, setValues
-
Methods inherited from interface gov.nasa.worldwind.event.MessageListener
onMessage
-
-
-
-
Field Detail
-
MOVE_VERTEX_ACTION
public static final java.lang.String MOVE_VERTEX_ACTION
- See Also:
- Constant Field Values
-
CHANGE_HEIGHT_ACTION
public static final java.lang.String CHANGE_HEIGHT_ACTION
- See Also:
- Constant Field Values
-
CHANGE_LATITUDE_ACTION
public static final java.lang.String CHANGE_LATITUDE_ACTION
- See Also:
- Constant Field Values
-
CHANGE_LONGITUDE_ACTION
public static final java.lang.String CHANGE_LONGITUDE_ACTION
- See Also:
- Constant Field Values
-
MOVE_SHAPE_ACTION
public static final java.lang.String MOVE_SHAPE_ACTION
- See Also:
- Constant Field Values
-
SCALE_SHAPE_ACTION
public static final java.lang.String SCALE_SHAPE_ACTION
- See Also:
- Constant Field Values
-
SCALE_NORTH_SOUTH_ACTION
public static final java.lang.String SCALE_NORTH_SOUTH_ACTION
- See Also:
- Constant Field Values
-
SCALE_EAST_WEST_ACTION
public static final java.lang.String SCALE_EAST_WEST_ACTION
- See Also:
- Constant Field Values
-
SCALE_VERTICAL_ACTION
public static final java.lang.String SCALE_VERTICAL_ACTION
- See Also:
- Constant Field Values
-
SCALE_NORTH_ACTION
public static final java.lang.String SCALE_NORTH_ACTION
- See Also:
- Constant Field Values
-
SCALE_SOUTH_ACTION
public static final java.lang.String SCALE_SOUTH_ACTION
- See Also:
- Constant Field Values
-
SCALE_EAST_ACTION
public static final java.lang.String SCALE_EAST_ACTION
- See Also:
- Constant Field Values
-
SCALE_WEST_ACTION
public static final java.lang.String SCALE_WEST_ACTION
- See Also:
- Constant Field Values
-
SCALE_UP_ACTION
public static final java.lang.String SCALE_UP_ACTION
- See Also:
- Constant Field Values
-
SCALE_DOWN_ACTION
public static final java.lang.String SCALE_DOWN_ACTION
- See Also:
- Constant Field Values
-
SCALE_RADIUS_ACTION
public static final java.lang.String SCALE_RADIUS_ACTION
- See Also:
- Constant Field Values
-
SCALE_ANGLE_ACTION
public static final java.lang.String SCALE_ANGLE_ACTION
- See Also:
- Constant Field Values
-
SCALE_NORTHEAST_ACTION
public static final java.lang.String SCALE_NORTHEAST_ACTION
- See Also:
- Constant Field Values
-
SCALE_SOUTHWEST_ACTION
public static final java.lang.String SCALE_SOUTHWEST_ACTION
- See Also:
- Constant Field Values
-
SCALE_NORTHWEST_ACTION
public static final java.lang.String SCALE_NORTHWEST_ACTION
- See Also:
- Constant Field Values
-
SCALE_SOUTHEAST_ACTION
public static final java.lang.String SCALE_SOUTHEAST_ACTION
- See Also:
- Constant Field Values
-
CHANGE_HEADING_ACTION
public static final java.lang.String CHANGE_HEADING_ACTION
- See Also:
- Constant Field Values
-
CHANGE_TILT_ACTION
public static final java.lang.String CHANGE_TILT_ACTION
- See Also:
- Constant Field Values
-
CHANGE_ROLL_ACTION
public static final java.lang.String CHANGE_ROLL_ACTION
- See Also:
- Constant Field Values
-
SKEW_NORTH_SOUTH_ACTION
public static final java.lang.String SKEW_NORTH_SOUTH_ACTION
- See Also:
- Constant Field Values
-
SKEW_EAST_WEST_ACTION
public static final java.lang.String SKEW_EAST_WEST_ACTION
- See Also:
- Constant Field Values
-
CHANGE_SKEW_ACTION
public static final java.lang.String CHANGE_SKEW_ACTION
- See Also:
- Constant Field Values
-
SET_TEXTURE_ACTION
public static final java.lang.String SET_TEXTURE_ACTION
- See Also:
- Constant Field Values
-
TEXTURE_MOVE_ACTION
public static final java.lang.String TEXTURE_MOVE_ACTION
- See Also:
- Constant Field Values
-
TEXTURE_UPPER_LEFT_ACTION
public static final java.lang.String TEXTURE_UPPER_LEFT_ACTION
- See Also:
- Constant Field Values
-
TEXTURE_UPPER_RIGHT_ACTION
public static final java.lang.String TEXTURE_UPPER_RIGHT_ACTION
- See Also:
- Constant Field Values
-
TEXTURE_LOWER_LEFT_ACTION
public static final java.lang.String TEXTURE_LOWER_LEFT_ACTION
- See Also:
- Constant Field Values
-
TEXTURE_LOWER_RIGHT_ACTION
public static final java.lang.String TEXTURE_LOWER_RIGHT_ACTION
- See Also:
- Constant Field Values
-
TEXTURE_SCALE_RIGHT_ACTION
public static final java.lang.String TEXTURE_SCALE_RIGHT_ACTION
- See Also:
- Constant Field Values
-
TEXTURE_SCALE_LEFT_ACTION
public static final java.lang.String TEXTURE_SCALE_LEFT_ACTION
- See Also:
- Constant Field Values
-
TEXTURE_SCALE_UP_ACTION
public static final java.lang.String TEXTURE_SCALE_UP_ACTION
- See Also:
- Constant Field Values
-
TEXTURE_SCALE_DOWN_ACTION
public static final java.lang.String TEXTURE_SCALE_DOWN_ACTION
- See Also:
- Constant Field Values
-
TRANSLATION_MODE
public static final java.lang.String TRANSLATION_MODE
- See Also:
- Constant Field Values
-
SCALE_MODE
public static final java.lang.String SCALE_MODE
- See Also:
- Constant Field Values
-
ROTATION_MODE
public static final java.lang.String ROTATION_MODE
- See Also:
- Constant Field Values
-
SKEW_MODE
public static final java.lang.String SKEW_MODE
- See Also:
- Constant Field Values
-
TEXTURE_MODE
public static final java.lang.String TEXTURE_MODE
- See Also:
- Constant Field Values
-
UPPER_LEFT_UV
public static final java.lang.Integer UPPER_LEFT_UV
-
UPPER_RIGHT_UV
public static final java.lang.Integer UPPER_RIGHT_UV
-
LOWER_LEFT_UV
public static final java.lang.Integer LOWER_LEFT_UV
-
LOWER_RIGHT_UV
public static final java.lang.Integer LOWER_RIGHT_UV
-
shape
protected RigidShape shape
-
activeControlPoint
protected RigidShape activeControlPoint
-
activeControlPointIndex
protected int activeControlPointIndex
-
controlPoints
protected java.util.List<RigidShape> controlPoints
-
selectedFace
protected int selectedFace
-
vertexControlAttributes
protected BasicMarkerAttributes vertexControlAttributes
-
translationControlAttributes
protected ShapeAttributes translationControlAttributes
-
scaleControlAttributes
protected ShapeAttributes scaleControlAttributes
-
rotationControlAttributes
protected ShapeAttributes rotationControlAttributes
-
textureControlAttributes
protected ShapeAttributes textureControlAttributes
-
heightControlAttributes
protected ShapeAttributes heightControlAttributes
-
radiusControlAttributes
protected ShapeAttributes radiusControlAttributes
-
rollGuideAttributes
protected ShapeAttributes rollGuideAttributes
-
headingGuideAttributes
protected ShapeAttributes headingGuideAttributes
-
tiltGuideAttributes
protected ShapeAttributes tiltGuideAttributes
-
translationRodAttributes
protected ShapeAttributes translationRodAttributes
-
scaleRodAttributes
protected ShapeAttributes scaleRodAttributes
-
rotationRodAttributes
protected ShapeAttributes rotationRodAttributes
-
radiusRodAttributes
protected ShapeAttributes radiusRodAttributes
-
intersectionsDispatchThread
protected java.lang.Thread intersectionsDispatchThread
-
tempPath
protected Path tempPath
-
tempPath2
protected Path tempPath2
-
tempPath3
protected Path tempPath3
-
firstPass
protected boolean firstPass
-
-
Method Detail
-
getShape
public RigidShape getShape()
-
setShape
public void setShape(AbstractShape shape)
- Specified by:
setShapein classAbstractShapeEditor
-
getEditMode
public java.lang.String getEditMode()
- Specified by:
getEditModein classAbstractShapeEditor
-
setEditMode
public void setEditMode(java.lang.String editMode)
- Specified by:
setEditModein classAbstractShapeEditor
-
getSelectedFace
public int getSelectedFace()
-
setSelectedFace
public void setSelectedFace(int selectedFace)
-
assembleControlPoints
protected void assembleControlPoints(DrawContext dc)
-
assembleTranslationControlPoints
protected void assembleTranslationControlPoints(DrawContext dc)
-
assembleScaleControlPoints
protected void assembleScaleControlPoints(DrawContext dc)
-
assembleRotationControlPoints
protected void assembleRotationControlPoints(DrawContext dc)
-
assembleSkewControlPoints
protected void assembleSkewControlPoints(DrawContext dc)
-
assembleTextureControlPoints
protected void assembleTextureControlPoints(DrawContext dc)
-
assembleVertexControlPoints
protected void assembleVertexControlPoints(DrawContext dc)
-
doRender
protected void doRender(DrawContext dc)
- Specified by:
doRenderin classAbstractLayer
-
doPick
protected void doPick(DrawContext dc, java.awt.Point point)
- Overrides:
doPickin classAbstractLayer
-
assembleControlPointAttributes
protected void assembleControlPointAttributes()
-
mouseClicked
public void mouseClicked(java.awt.event.MouseEvent e)
-
mouseDragged
public void mouseDragged(java.awt.event.MouseEvent e)
-
mousePressed
public void mousePressed(java.awt.event.MouseEvent e)
-
mouseReleased
public void mouseReleased(java.awt.event.MouseEvent e)
-
moveShape
protected void moveShape(java.awt.Point previousMousePoint, java.awt.Point mousePoint)
-
moveShapeLatitude
protected void moveShapeLatitude(java.awt.Point previousMousePoint, java.awt.Point mousePoint)
-
moveShapeLongitude
protected void moveShapeLongitude(java.awt.Point previousMousePoint, java.awt.Point mousePoint)
-
setShapeHeight
protected void setShapeHeight(java.awt.Point previousMousePoint, java.awt.Point mousePoint)
-
scaleShapeEastWest
protected void scaleShapeEastWest(java.awt.Point previousMousePoint, java.awt.Point mousePoint)
-
scaleShapeEast
protected void scaleShapeEast(java.awt.Point previousMousePoint, java.awt.Point mousePoint)
-
scaleShapeWest
protected void scaleShapeWest(java.awt.Point previousMousePoint, java.awt.Point mousePoint)
-
scaleShapeNorthSouth
protected void scaleShapeNorthSouth(java.awt.Point previousMousePoint, java.awt.Point mousePoint)
-
scaleShapeNorth
protected void scaleShapeNorth(java.awt.Point previousMousePoint, java.awt.Point mousePoint)
-
scaleShapeSouth
protected void scaleShapeSouth(java.awt.Point previousMousePoint, java.awt.Point mousePoint)
-
scaleShapeVertical
protected void scaleShapeVertical(java.awt.Point previousMousePoint, java.awt.Point mousePoint)
-
scaleShapeUp
protected void scaleShapeUp(java.awt.Point previousMousePoint, java.awt.Point mousePoint)
-
scaleShapeDown
protected void scaleShapeDown(java.awt.Point previousMousePoint, java.awt.Point mousePoint)
-
scaleShapeNortheast
protected void scaleShapeNortheast(java.awt.Point previousMousePoint, java.awt.Point mousePoint)
-
scaleShapeSouthwest
protected void scaleShapeSouthwest(java.awt.Point previousMousePoint, java.awt.Point mousePoint)
-
scaleShapeRadius
protected void scaleShapeRadius(java.awt.Point previousMousePoint, java.awt.Point mousePoint)
-
scaleShapeAngle
protected void scaleShapeAngle(java.awt.Point previousMousePoint, java.awt.Point mousePoint)
-
scaleShape
protected void scaleShape(java.awt.Point previousMousePoint, java.awt.Point mousePoint)
-
changeShapeHeading
protected void changeShapeHeading(java.awt.Point previousMousePoint, java.awt.Point mousePoint)
-
changeShapeRoll
protected void changeShapeRoll(java.awt.Point previousMousePoint, java.awt.Point mousePoint)
-
changeShapeTilt
protected void changeShapeTilt(java.awt.Point previousMousePoint, java.awt.Point mousePoint)
-
skewShapeEastWest
protected void skewShapeEastWest(java.awt.Point previousMousePoint, java.awt.Point mousePoint)
-
skewShapeNorthSouth
protected void skewShapeNorthSouth(java.awt.Point previousMousePoint, java.awt.Point mousePoint)
-
skewShape
protected void skewShape(java.awt.Point previousMousePoint, java.awt.Point mousePoint)
-
moveTexture
protected void moveTexture(java.awt.Point previousMousePoint, java.awt.Point mousePoint)
-
moveTextureCorner
protected void moveTextureCorner(java.awt.Point previousMousePoint, java.awt.Point mousePoint, java.lang.Integer corner)
-
scaleTexture
protected void scaleTexture(java.awt.Point previousMousePoint, java.awt.Point mousePoint, RigidShapeEditor.Direction side)
-
textureShape
protected void textureShape(java.awt.Point previousMousePoint, java.awt.Point mousePoint)
-
moveControlPoint
protected void moveControlPoint(RigidShapeEditor.ControlPointMarker controlPoint, java.awt.Point moveToPoint)
-
addVertex
protected void addVertex(java.awt.Point mousePoint)
Add a vertex to the polygon's outer boundary.- Parameters:
mousePoint- the point at which the mouse was clicked. The new vertex will be placed as near as possible to this point, at the elevation of the polygon.
-
removeVertex
protected void removeVertex(RigidShapeEditor.ControlPointMarker vertexToRemove)
Remove a vertex from the polygon.- Parameters:
vertexToRemove- the vertex to remove.
-
intersectPolygonAltitudeAt
protected Vec4 intersectPolygonAltitudeAt(Line ray)
Determine the point at which a ray intersects a the globe at the elevation of the polygon.- Parameters:
ray- Ray to intersect with the globe.- Returns:
- The point at which the ray intersects the globe at the elevation of the polygon.
-
mouseEntered
public void mouseEntered(java.awt.event.MouseEvent e)
-
mouseExited
public void mouseExited(java.awt.event.MouseEvent e)
-
mouseMoved
public void mouseMoved(java.awt.event.MouseEvent e)
-
updateAnnotation
public void updateAnnotation(Position pos)
- Specified by:
updateAnnotationin classAbstractShapeEditor
-
getDisplayString
protected java.lang.String getDisplayString(Position pos)
-
formatMeasurements
protected java.lang.String formatMeasurements(Position pos)
-
-