Navigate a scene view

You can navigate a scene view (a 3D map):

Built-in navigation

The scene view has a number of built-in gestures that allow you to navigate a scene (3D) using touch screen, mouse, or keyboard.

Basic navigation

Basic navigation for scene views is the same as navigation for map views:

Map navigationTouch actionMouse actionKey action
Pan the mapTouch, hold, and drag on the mapPress, hold, and drag the left mouse buttonPress the left (pan west), right (pan east), up (pan north), or down (pan south) arrows
Zoom in (+) or zoom out (-) with animationPinch open (+) or pinch close (-) on the mapScroll the mouse wheel forward (+) or backward (-)Press the + / = key for in
Press the - / _ key for out
Zoom in to the next level of detail or by a factor of 2Double tap on the mapDouble-click the left mouse buttonPress the + / = key
Zoom out to the next level of detail or by a factor of 2Single tap with two fingers simultaneouslyDouble-click of right mouse buttonPress the - / _ key
RotateTwo-finger pinch and twist fingers to rotate the map or sceneOn scenes only, press and hold while dragging (left to right) the right mouse buttonPress the 'a' (rotate west) or 'd' (rotate east) keys
Set viewpoint to northN/AN/APress the 'n' key

Advanced navigation

Scene views have additional navigation not found in map views:

Scene navigationTouch actionMouse actionKey action
Pitch: increase or decreaseTouch, hold and drag up (increase) or down (decrease)Press, hold and drag the right mouse button up (increase) or down (decrease)Press the 'w' (increase) or 's' (decrease) keys. Press 'p' to set pitch to 0.
Elevation: increase or decreaseN/AN/APress the 'u' (increase) or 'j' (decrease) keys

Programmatically change camera position

Your applications can programmatically navigate a 3D scene by creating a new camera and setting it to the scene view. A camera defines the location from which you are viewing the scene.

Camera position for a scene view

The camera is shown in this image for illustration purposes; when you set camera settings (location, pitch), think of the camera class a real-life camera you're adjusting the position of.

Set the camera

For example, to point the camera to toward the Snowdon mountainside, as shown in the following code snippet and image, use these values:

  • For 3D location, use 53.06 latitude, -4.04 longitude, 1289 meters above sea level
  • For heading, use 295 degrees
  • For pitch, use 71 degrees
  • For roll, use 0 degrees
    
1
2
3
4

const Camera sceneCamera(53.06, -4.04, 1289.0, 295.0, 71.0, 0.0);

m_sceneView->setViewpointCamera(sceneCamera);

Surface elevation applied to a scene

Now you have a new camera you can apply to your scene view. You can apply it immediately using setViewpointCamera as shown in the code below, or the camera can be animated to the new position using one of the asynchronous methods.

    
1
2
3
4

const Camera sceneCamera(53.06, -4.04, 1289.0, 295.0, 71.0, 0.0);

m_sceneView->setViewpointCamera(sceneCamera);

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