Namespace: GameEngine.MapView
Class: GameEngine/MapView/ArcGISCamera
Since: 1.0.0

Summary

A camera represents an observer’s location and their perspective of an ArcGISMap. It is used as a data loading point.

Constructors

ArcGISCamera(ArcGISPoint locationPoint, double heading, double pitch, double roll)

Creates a camera with the specified location, heading, pitch, and roll. The camera’s spatial reference is derived from the locationPoint.

Since 1.0.0

Arguments
NameTypeSummary
locationPoint

A point geometry defining the 3D location at which to place the camera. If the point has a spatial reference, the camera will adopt it. Otherwise, a spatial reference of WGS84 is assumed. If the point’s z value is below the Scene.baseSurface and the Surface.navigationConstraint is set to NavigationConstraint.stayAbove, the camera will be positioned at the Surface. Note that the default is NavigationConstraint.stayAbove.

heading

The angle around the z-axis at which the camera is rotated. The angle is clockwise from north in the East, North, Up (ENU) ground reference frame. The value is between 0 and 360, where 0 is looking North and 90 is looking East. Values are wrapped modulo 360 (for example, 370 becomes 10).

pitch

The angle around the x-axis at which the camera is rotated in the East, North, Up (ENU) ground reference frame. The value is between 0 and 180, where 0 is looking straight down, 90 is looking towards the horizon, and 180 is looking straight up. Pitch values are clamped to this range: a negative value defaults to 0 and a value greater than 180 defaults to 180. If the behavior of a negative pitch is required, then the corresponding transformation with positive pitch can be set instead. For example, if heading:0 pitch:-20 roll:0 is required then heading:180 pitch:20 roll:180 can be used instead.

roll

The angle around the y-axis (the direction of sight) at which the camera is rotated in the East, North, Up (ENU) ground reference frame. Positive values rotate counterclockwise in view space (for example, when looking north, 90 means the top of the screen points west). The value is between 0 and 360, where 0 is horizontal and 180 is upside down. Values are wrapped modulo 360 (for example, 370 becomes 10).

Properties

PropertyTypeNullableReadonlySummary
No
Yes

The heading of the camera.

No
Yes

The point geometry containing the location and altitude of the camera.

No
Yes

The pitch of the camera.

No
Yes

The roll of the camera.

Heading

double Heading

The heading of the camera.

The angle around the z-axis at which the camera is rotated. The angle is clockwise from north in the East, North, Up (ENU) ground reference frame. The value is between 0 and 360, where 0 is looking North and 90 is looking East.

Location

ArcGISPoint Location

The point geometry containing the location and altitude of the camera.

Pitch

double Pitch

The pitch of the camera.

The angle around the x-axis at which the camera is rotated in the East, North, Up (ENU) ground reference frame. The value is between 0 and 180, where 0 is looking straight down, 90 is looking towards the horizon, and 180 is looking straight up.

Roll

double Roll

The roll of the camera.

The angle around the y-axis (the direction of sight) at which the camera is rotated in the East, North, Up (ENU) ground reference frame. Positive values rotate counterclockwise in view space (for example, when looking north, 90 means the top of the screen points west). The value is between 0 and 360, where 0 is horizontal and 180 is upside down.

Methods

SignatureReturn TypeSummary

Creates a copy of the camera with the specified change in altitude applied.

Creates a copy of the camera with a new location.

Creates a copy of the camera with the specified heading, pitch and roll values.

Elevate

ArcGISCamera Elevate(double deltaAltitude)

Creates a copy of the camera with the specified change in altitude applied.

Since 1.0.0

Arguments
NameTypeSummary
deltaAltitude

The altitude delta in meters to apply to the output camera.

Returns ArcGISCamera

A copy of the camera with an elevation delta adjusted by the parameter delta_altitude.

MoveTo

ArcGISCamera MoveTo(ArcGISPoint location)

Creates a copy of the camera with a new location.

Since 1.0.0

Arguments
NameTypeSummary
location

The location to move the output camera to. The returned camera is in the same spatial reference as the source camera. If the spatial reference of the point is not specified, it is assumed to be the spatial reference of the camera.

Returns ArcGISCamera

A copy of the camera with the location changed.

RotateTo

ArcGISCamera RotateTo(double heading, double pitch, double roll)

Creates a copy of the camera with the specified heading, pitch and roll values.

Since 1.0.0

Arguments
NameTypeSummary
heading

The angle around the z-axis at which the new camera is rotated. The angle is clockwise from north in the East, North, Up (ENU) ground reference frame. The value is between 0 and 360, where 0 is looking North and 90 is looking East. Values are wrapped modulo 360 (for example, 370 becomes 10).

pitch

The angle around the x-axis at which the new camera is rotated in the East, North, Up (ENU) ground reference frame. The value is between 0 and 180, where 0 is looking straight down, 90 is looking towards the horizon, and 180 is looking straight up. Pitch values are clamped to this range: a negative value defaults to 0 and a value greater than 180 defaults to 180. If the behavior of a negative pitch is required, then the corresponding transformation with positive pitch can be set instead. For example, if heading:0 pitch:-20 roll:0 is required then heading:180 pitch:20 roll:180 can be used instead.

roll

The angle around the y-axis (the direction of sight) at which the new camera is rotated in the East, North, Up (ENU) ground reference frame. Positive values rotate counterclockwise in view space (for example, when looking north, 90 means the top of the screen points west). The value is between 0 and 360, where 0 is horizontal and 180 is upside down. Values are wrapped modulo 360 (for example, 370 becomes 10).

Returns ArcGISCamera

A copy of the camera with the position moved