GeoElement.
GeoElementViewshed determines visible and non-visible areas in a scene view for an observer defined with a
GeoElement. The viewshed is updated as the GeoElement location changes. Supported GeoElement types
are Graphic, Feature,
DynamicEntity, and
DynamicEntityObservation.
The relative location of the observer can be controlled using setOffsetX(double),
setOffsetY(double) and setOffsetZ(double).
The relative direction of the observer can be controlled using setHeadingOffset(double)
and setPitchOffset(double).
- Since:
- 100.2.0
-
Property Summary
Properties inherited from class com.esri.arcgisruntime.geoanalysis.Viewshed
frustumOutlineColor, obstructedColor, visibleColor -
Constructor Summary
ConstructorsConstructorDescriptionGeoElementViewshed(GeoElement geoElement, double horizontalAngle, double verticalAngle, double minDistance, double maxDistance, double headingOffset, double pitchOffset) Creates a viewshed analysis object whose observer is defined using aGeoElement. -
Method Summary
Modifier and TypeMethodDescriptionGets theGeoElementthat represents the observer for the viewshed analysis.doubleGets the offset angle applied to the heading of theGeoElement.doubleGets the location offset in the X direction that defines the observer relative to theGeoElement.doubleGets the location offset in the Y direction that defines the observer relative to theGeoElement.doubleGets the location offset in the Z direction that defines the observer relative to theGeoElement.doubleGets the offset angle applied to the pitch of theGeoElement.voidsetHeadingOffset(double headingOffset) Sets the offset angle applied to the heading of theGeoElement.voidsetOffsetX(double offsetX) Sets the location offset in the X direction that defines the observer relative to theGeoElement.voidsetOffsetY(double offsetY) Sets the location offset in the Y direction that defines the observer relative to theGeoElement.voidsetOffsetZ(double offsetZ) Sets the location offset in the Z direction that defines the observer relative to theGeoElement.voidsetPitchOffset(double pitchOffset) Sets the offset angle applied to the pitch of theGeoElement.Methods inherited from class com.esri.arcgisruntime.geoanalysis.Viewshed
frustumOutlineColorProperty, getFrustumOutlineColor, getHorizontalAngle, getMaxDistance, getMinDistance, getObstructedColor, getVerticalAngle, getVisibleColor, isFrustumOutlineVisibile, obstructedColorProperty, setFrustumOutlineColor, setFrustumOutlineColor, setFrustumOutlineVisible, setHorizontalAngle, setMaxDistance, setMinDistance, setObstructedColor, setObstructedColor, setVerticalAngle, setVisibleColor, setVisibleColor, visibleColorPropertyMethods inherited from class com.esri.arcgisruntime.geoanalysis.Analysis
isVisible, setVisible
-
Constructor Details
-
GeoElementViewshed
public GeoElementViewshed(GeoElement geoElement, double horizontalAngle, double verticalAngle, double minDistance, double maxDistance, double headingOffset, double pitchOffset) Creates a viewshed analysis object whose observer is defined using aGeoElement.Visible and obstructed areas are determined for an area defined by the location and orientation of a
GeoElement, field of view angles, and the min/max distance range. These parameters define the frustum over which visibility is calculated from the observer element. The horizontal and vertical angles must be greater than zero and less than or equal to 120 degrees. Terrain and other obstacles between the observer and the minimum distance are excluded from the analysis, as are areas beyond the maximum distance. SupportedGeoElementtypes areGraphic,Feature,DynamicEntity, andDynamicEntityObservation.- Parameters:
geoElement- aGeoElementfrom which the position and orientation of the observer will be determinedhorizontalAngle- the horizontal spread of the viewshed, in degrees, > 0 and <= 360verticalAngle- the vertical spread of the viewshed, in degrees, > 0 and <= 360minDistance- the minimum distance from the observer to render, in meters within [0, Double.MAX_VALUE]maxDistance- the maximum distance from the observer to render, in meters within [0, Double.MAX_VALUE]headingOffset- the offset from the GeoElement's heading, in degreespitchOffset- the offset from the GeoElement's pitch, in degrees- Throws:
IllegalArgumentException- if geoElement is null- Since:
- 100.2.0
-
-
Method Details
-
getGeoElement
Gets theGeoElementthat represents the observer for the viewshed analysis.The observer's location, heading, and pitch are determined by the location and orientation of this
GeoElement. SupportedGeoElementtypes areGraphic,Feature,DynamicEntity, andDynamicEntityObservation.- Returns:
- the GeoElement used to create this viewshed.
- Since:
- 100.2.0
-
getHeadingOffset
public double getHeadingOffset()Gets the offset angle applied to the heading of theGeoElement.The observer heading is determined by the
GeoElementheading plus the heading offset.- Returns:
- the offset from the GeoElement's heading, in degrees
- Since:
- 100.2.0
-
setHeadingOffset
public void setHeadingOffset(double headingOffset) Sets the offset angle applied to the heading of theGeoElement.The observer heading is determined by the
GeoElementheading plus the heading offset.- Parameters:
headingOffset- the offset from the GeoElement's heading, in degrees- Since:
- 100.2.0
-
getPitchOffset
public double getPitchOffset()Gets the offset angle applied to the pitch of theGeoElement.The observer pitch is determined by the
GeoElementpitch plus the pitch offset. The valid range of values for the observer pitch is from 0 to 180 degrees.- Returns:
- the offset from the GeoElement's pitch, in degrees
- Since:
- 100.2.0
-
setPitchOffset
public void setPitchOffset(double pitchOffset) Sets the offset angle applied to the pitch of theGeoElement.The observer pitch is determined by the
GeoElementpitch plus the pitch offset. The valid range of values for the observer pitch is from 0 to 180 degrees.- Parameters:
pitchOffset- the offset from the GeoElement's pitch, in degrees- Since:
- 100.2.0
-
getOffsetX
public double getOffsetX()Gets the location offset in the X direction that defines the observer relative to theGeoElement.The observer location is determined by the
GeoElementlocation plus the offset X,Y,Z values. Any rotations applied to theGeoElementwill also be applied to the X,Y,Z offsets. This allows the observer to be positioned relative to theGeoElementand maintain the relative position even when theGeoElementmoves and rotates.- Returns:
- the observer's offset from the GeoElement's location along the x-axis
- Since:
- 100.2.0
-
setOffsetX
public void setOffsetX(double offsetX) Sets the location offset in the X direction that defines the observer relative to theGeoElement.The observer location is determined by the
GeoElementlocation plus the offset X,Y,Z values. Any rotations applied to theGeoElementwill also be applied to the X,Y,Z offsets. This allows the observer to be positioned relative to theGeoElementand maintain the relative position even when theGeoElementmoves and rotates.- Parameters:
offsetX- the observer's offset from the GeoElement's location along the x-axis- Since:
- 100.2.0
-
getOffsetY
public double getOffsetY()Gets the location offset in the Y direction that defines the observer relative to theGeoElement.The observer location is determined by the
GeoElementlocation plus the offset X,Y,Z values. Any rotations applied to theGeoElementwill also be applied to the X,Y,Z offsets. This allows the observer to be positioned relative to theGeoElementand maintain the relative position even when theGeoElementmoves and rotates.- Returns:
- the observer's offset from the GeoElement's location along the y-axis
- Since:
- 100.2.0
-
setOffsetY
public void setOffsetY(double offsetY) Sets the location offset in the Y direction that defines the observer relative to theGeoElement.The observer location is determined by the
GeoElementlocation plus the offset X,Y,Z values. Any rotations applied to theGeoElementwill also be applied to the X,Y,Z offsets. This allows the observer to be positioned relative to theGeoElementand maintain the relative position even when theGeoElementmoves and rotates.- Parameters:
offsetY- the observer's offset from the GeoElement's location along the y-axis- Since:
- 100.2.0
-
getOffsetZ
public double getOffsetZ()Gets the location offset in the Z direction that defines the observer relative to theGeoElement.The observer location is determined by the
GeoElementlocation plus the offset X,Y,Z values. Any rotations applied to theGeoElementwill also be applied to the X,Y,Z offsets. This allows the observer to be positioned relative to theGeoElementand maintain the relative position even when theGeoElementmoves and rotates.- Returns:
- the observer's offset from the GeoElement's location along the z-axis
- Since:
- 100.2.0
-
setOffsetZ
public void setOffsetZ(double offsetZ) Sets the location offset in the Z direction that defines the observer relative to theGeoElement.The observer location is determined by the
GeoElementlocation plus the offset X,Y,Z values. Any rotations applied to theGeoElementwill also be applied to the X,Y,Z offsets. This allows the observer to be positioned relative to theGeoElementand maintain the relative position even when theGeoElementmoves and rotates.- Parameters:
offsetZ- the observer's offset from the GeoElement's location along the z-axis- Since:
- 100.2.0
-