OrbitLocationCameraController QML Type

SceneView."> OrbitLocationCameraController QML Type | ArcGISQtQml
  • Esri.ArcGISRuntime
  • OrbitLocationCameraController
  • A camera controller that supports orbital camera navigation around a stationary point in a SceneView. More...

    Import Statement: import Esri.ArcGISRuntime
    Since: Esri.ArcGISRuntime 100.1
    Inherits:

    CameraController

    Properties

    Signals

    Methods

    • bool cancelTask(string taskId)
    • string moveCamera(double distanceDelta, double headingDelta, double pitchDelta, real duration)

    Detailed Description

    An orbit camera controller locks navigation around a target point. The camera can orbit around the target point but always focuses directly on the point. To activate the controller, set the controller on the SceneView::cameraController property. Once applied, the target point cannot be changed and setting the viewpoint on the SceneView is disabled. In this mode, the user can rotate around and zoom in and out from the target point.

    This QML type supports the following default properties. A default property may be declared inside another declared object without being assigned explicitly to a property.

    TypeDefault Property
    PointtargetLocation

    See also CameraController, Cancelable, OrbitGeoElementCameraController, and GlobeCameraController.

    Property Documentation

    cameraDistance : double

    The distance from the target location to the camera in meters.

    The camera position and orientation is derived from this distance plus any camera offsets.

    This value must be greater than 0.


    cameraDistanceInteractive : bool

    The interactive heading value indicating whether user interactions affect the camera's distance from the target.

    When true, the user may zoom towards and away from the targetLocation using mouse/touch interactions with the view.

    The default setting is true.


    cameraHeadingOffset : double

    The heading of the camera relative to the targetLocation, in degrees.

    The clockwise angle in the horizontal plane of the targetLocation starting from due south. Any angle in degrees is valid and will automatically be normalized between -180 to 180. Defaults to 0 degrees.


    cameraHeadingOffsetInteractive : bool

    The interactive heading offset value indicating whether user interactions affect the camera's heading.

    When interactive heading is true the user is able to manually change the relative heading between the target focal point and the camera.

    The default setting is true.


    cameraPitchOffset : double

    The pitch of the camera relative to the targetLocation, in degrees.

    The anti-clockwise angle from the positive Z axis through the targetLocation to the target's horizontal plane. Any angle in degrees is valid and will automatically be normalized between 0 and 180. Defaults to 45 degrees.


    cameraPitchOffsetInteractive : bool

    The interactive pitch value indicating whether user interactions affect the camera's pitch.

    When enabled, the user can change the cameraPitchOffset with a vertical pan interaction.

    The default setting is true.


    [since Esri.ArcGISRuntime 100.3] initialCameraLocation : Point

    The camera location of the camera controller.

    Sets the initial location of the camera. The distance, heading, and pitch will be calculated based on this point and the targetLocation. The target location must also be set before this is added to the scene.

    This property was introduced in Esri.ArcGISRuntime 100.3.


    maxCameraDistance : double

    The maximum distance from the camera to the targetLocation, in meters.

    The value must be greater than minCameraDistance. Serves as the maximum value for cameraDistance. Animations and interactions obey this limit. No limit on this maximum distance.


    maxCameraHeadingOffset : double

    The maximum camera heading offset relative to the targetLocation, in degrees.

    The value must be greater than minCameraHeadingOffset. Serves as the maximum value for cameraHeadingOffset. Animations and interactions obey this limit. Defaults to 180.


    maxCameraPitchOffset : double

    The maximum camera pitch offset in degrees.

    This value must be in the range: minCameraPitchOffset to 90°.

    Serves as the maximum value for cameraPitchOffset. Animations and interactions obey this limit.

    The default value is 90°.


    minCameraDistance : double

    The minimum distance from the camera to the targetLocation, in meters.

    The value cannot be negative. Serves as the minimum value for cameraDistance. Animations and interactions obey this limit. Defaults to 0.


    minCameraHeadingOffset : double

    The minimum camera heading offset relative to the targetLocation, in degrees.

    The value must be less than maxCameraHeadingOffset. Serves as the minimum value for cameraHeadingOffset. Animations and interactions obey this limit. Defaults to -180.


    minCameraPitchOffset : double

    The minimum camera pitch offset relative to the targetLocation, in degrees.

    The value must be less than maxCameraPitchOffset but no less than -90. Serves as the minimum value for cameraPitchOffset. Animations and interactions obey this limit. Defaults to -90.


    [read-only] moveCameraStatus : Enums.TaskStatus

    Returns the status of the moveCamera task (read-only).

    See also Enums.TaskStatus.


    [default] targetLocation : Point

    The location on which the camera focuses and around which it orbits.

    The target location is the focal point of the camera managed by the orbit camera controller. The position of the camera is determined by the cameraDistance, cameraHeadingOffset, and cameraPitchOffset relative to this location.


    Signal Documentation

    cameraDistanceChanged()

    Emitted when the cameraDistance property changes.

    Note: The corresponding handler is onCameraDistanceChanged.


    cameraDistanceInteractiveChanged()

    Emitted when the cameraDistanceInteractive property changes.

    Note: The corresponding handler is onCameraDistanceInteractiveChanged.


    cameraHeadingOffsetChanged()

    Emitted when the cameraHeadingOffset property changes.

    Note: The corresponding handler is onCameraHeadingOffsetChanged.


    cameraHeadingOffsetInteractiveChanged()

    Emitted when the cameraHeadingOffsetInteractive property changes.

    Note: The corresponding handler is onCameraHeadingOffsetInteractiveChanged.


    cameraPitchOffsetChanged()

    Emitted when the cameraPitchOffset property changes.

    Note: The corresponding handler is onCameraPitchOffsetChanged.


    cameraPitchOffsetInteractiveChanged()

    Emitted when the cameraPitchOffsetInteractive property changes.

    Note: The corresponding handler is onCameraPitchOffsetInteractiveChanged.


    [since Esri.ArcGISRuntime 100.3] initialCameraLocationChanged()

    Emitted when the initialCameraLocation property changes.

    Note: The corresponding handler is onInitialCameraLocationChanged.

    This signal was introduced in Esri.ArcGISRuntime 100.3.


    maxCameraDistanceChanged()

    Emitted when the maxCameraDistance property changes.

    Note: The corresponding handler is onMaxCameraDistanceChanged.


    maxCameraHeadingOffsetChanged()

    Emitted when the maxCameraHeadingOffset property changes.

    Note: The corresponding handler is onMaxCameraHeadingOffsetChanged.


    maxCameraPitchOffsetChanged()

    Emitted when the maxCameraPitchOffset property changes.

    Note: The corresponding handler is onMaxCameraPitchOffsetChanged.


    minCameraDistanceChanged()

    Emitted when the minCameraDistance property changes.

    Note: The corresponding handler is onMinCameraDistanceChanged.


    minCameraHeadingOffsetChanged()

    Emitted when the minCameraHeadingOffset property changes.

    Note: The corresponding handler is onMinCameraHeadingOffsetChanged.


    minCameraPitchOffsetChanged()

    Emitted when the minCameraPitchOffset property changes.

    Note: The corresponding handler is onMinCameraPitchOffsetChanged.


    moveCameraStatusChanged()

    Emitted when the moveCameraStatus property changes.

    Note: The corresponding handler is onMoveCameraStatusChanged.


    targetLocationChanged()

    Emitted when the targetLocation property changes.

    Note: The corresponding handler is onTargetLocationChanged.


    Method Documentation

    bool cancelTask(string taskId)

    Cancels a moveCamera task.

    Returns false if the task cannot be canceled or there is no task with the specified id taskId.

    • taskId - The ID of the moveCamera task to be canceled.

    See also Cancelable.


    string moveCamera(double distanceDelta, double headingDelta, double pitchDelta, real duration)

    Animate the camera to the new position relative to the target.

    • distanceDelta - The change in distance (meters) to apply in the animation.
    • headingDelta - The change in heading (degrees) to apply in the animation.
    • pitchDelta - The change in pitch (degrees) to apply in the animation.
    • duration - The duration of the animation in seconds.

    The moveCameraStatus property shows the status of this operation.

    The heading and pitch delta values may be greater than 360 degrees and the angle is not normalized. For example, a heading delta of 720 will make the camera do two circles around the target within the duration time. Returns a string representing the task ID of the asynchronous task.


    Your browser is no longer supported. Please upgrade your browser for the best experience. See our browser deprecation post for more details.