public class CompassLayer extends AbstractLayer
Modifier and Type | Class and Description |
---|---|
protected class |
CompassLayer.OrderedIcon |
Modifier and Type | Field and Description |
---|---|
protected int |
borderWidth |
protected double |
compassToViewportScale |
protected long |
frameStampForDrawing |
protected long |
frameStampForPicking |
protected java.lang.String |
iconFilePath |
protected int |
iconHeight |
protected double |
iconScale |
protected int |
iconWidth |
protected Vec4 |
locationCenter |
protected Vec4 |
locationOffset |
protected CompassLayer.OrderedIcon |
orderedImage |
protected PickSupport |
pickSupport |
protected java.lang.String |
position |
protected java.lang.String |
resizeBehavior |
protected boolean |
showTilt |
Constructor and Description |
---|
CompassLayer() |
CompassLayer(java.lang.String iconFilePath) |
Modifier and Type | Method and Description |
---|---|
protected double |
computeHeading(View view) |
protected Vec4 |
computeLocation(java.awt.Rectangle viewport,
double scale) |
protected double |
computePitch(View view) |
protected double |
computeScale(java.awt.Rectangle viewport) |
protected void |
doPick(DrawContext dc,
java.awt.Point pickPoint) |
protected void |
doRender(DrawContext dc) |
protected void |
draw(DrawContext dc) |
int |
getBorderWidth() |
double |
getCompassToViewportScale()
Returns the layer's compass-to-viewport scale factor.
|
java.lang.String |
getIconFilePath()
Returns the layer's current icon file path.
|
double |
getIconScale()
Returns the icon scale factor.
|
Vec4 |
getLocationCenter()
Returns the current compass image location.
|
Vec4 |
getLocationOffset()
Returns the current location offset.
|
java.lang.String |
getPosition()
Returns the current relative compass icon position.
|
java.lang.String |
getResizeBehavior()
Returns the compass icon's resize behavior.
|
protected double |
getScaledIconHeight() |
protected double |
getScaledIconWidth() |
protected void |
initializeTexture(DrawContext dc) |
boolean |
isShowTilt() |
void |
setBorderWidth(int borderWidth)
Sets the compass icon offset from the viewport border.
|
void |
setCompassToViewportScale(double compassToViewportScale)
Sets the scale factor applied to the viewport size to determine the displayed size of the compass icon.
|
void |
setIconFilePath(java.lang.String iconFilePath)
Sets the compass icon's image location.
|
void |
setIconScale(double iconScale)
Sets the scale factor defining the displayed size of the compass icon relative to the icon's width and height in
its image file.
|
void |
setLocationCenter(Vec4 locationCenter)
Specifies the screen location of the compass image, relative to the image's center.
|
void |
setLocationOffset(Vec4 locationOffset)
Specifies a placement offset from the compass' position on the screen.
|
void |
setPosition(java.lang.String position)
Sets the relative viewport location to display the compass icon.
|
void |
setResizeBehavior(java.lang.String resizeBehavior)
Sets the behavior the layer uses to size the compass icon when the viewport size changes, typically when the
WorldWind window is resized.
|
void |
setShowTilt(boolean showTilt) |
java.lang.String |
toString() |
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
onMessage, propertyChange
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
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
addPropertyChangeListener, addPropertyChangeListener, clearList, copy, firePropertyChange, firePropertyChange, getEntries, getStringValue, getValue, getValues, hasKey, removeKey, removePropertyChangeListener, removePropertyChangeListener, setValue, setValues
onMessage
protected int borderWidth
protected double compassToViewportScale
protected long frameStampForDrawing
protected long frameStampForPicking
protected java.lang.String iconFilePath
protected int iconHeight
protected double iconScale
protected int iconWidth
protected Vec4 locationCenter
protected Vec4 locationOffset
protected CompassLayer.OrderedIcon orderedImage
protected PickSupport pickSupport
protected java.lang.String position
protected java.lang.String resizeBehavior
protected boolean showTilt
public CompassLayer()
public CompassLayer(java.lang.String iconFilePath)
protected double computeHeading(View view)
protected Vec4 computeLocation(java.awt.Rectangle viewport, double scale)
protected double computePitch(View view)
protected double computeScale(java.awt.Rectangle viewport)
protected void doPick(DrawContext dc, java.awt.Point pickPoint)
doPick
in class AbstractLayer
protected void doRender(DrawContext dc)
doRender
in class AbstractLayer
protected void draw(DrawContext dc)
public int getBorderWidth()
public double getCompassToViewportScale()
public java.lang.String getIconFilePath()
public double getIconScale()
setIconScale(double)
for a description of the scale factor.public Vec4 getLocationCenter()
public Vec4 getLocationOffset()
public java.lang.String getPosition()
public java.lang.String getResizeBehavior()
protected double getScaledIconHeight()
protected double getScaledIconWidth()
protected void initializeTexture(DrawContext dc)
public boolean isShowTilt()
public void setBorderWidth(int borderWidth)
borderWidth
- the number of pixels to offset the compass icon from the borders indicated by setPosition(String)
.public void setCompassToViewportScale(double compassToViewportScale)
compassToViewportScale
- the compass to viewport scale factorpublic void setIconFilePath(java.lang.String iconFilePath)
iconFilePath
- the path to the icon's image filepublic void setIconScale(double iconScale)
setCompassToViewportScale(double)
and the current viewport size.
The default icon scale is 0.5.iconScale
- the icon scale factorpublic void setLocationCenter(Vec4 locationCenter)
setPosition(String)
. The location is specified in
pixels. The origin is the window's lower left corner. Positive X values are to the right of the origin, positive
Y values are upwards from the origin. The final image location will be affected by the currently specified
location offset if a non-null location offset has been specified (see setLocationOffset(gov.nasa.worldwind.geom.Vec4)
).locationCenter
- the location center. May be null.setPosition(String)
,
setLocationOffset(gov.nasa.worldwind.geom.Vec4)
public void setLocationOffset(Vec4 locationOffset)
locationOffset
- the number of pixels to shift the compass image from its specified screen position. A
positive X value shifts the image to the right. A positive Y value shifts the image up. If
null, no offset is applied. The default offset is null.setLocationCenter(gov.nasa.worldwind.geom.Vec4)
,
setPosition(String)
public void setPosition(java.lang.String position)
position
- the desired compass positionpublic void setResizeBehavior(java.lang.String resizeBehavior)
resizeBehavior
- the desired resize behaviorpublic void setShowTilt(boolean showTilt)
public java.lang.String toString()
toString
in class AbstractLayer