- All Implemented Interfaces:
SceneViewNavigation
,Styleable
,EventTarget
,Skinnable
ArcGISScene
.
A SceneView is a user interface that displays ArcGISScene
layers and graphics in 3D. It uses a camera to
control the visible area (extent) of the ArcGISScene
and supports user interactions such as pan, zoom, tilt, and
rotate. A scene view also provides access to the underlying layer data in a scene.
To display an ArcGISScene
, add a SceneView control to your app and assign the scene to it. This loads the
scene and its content, such as a Surface
, Basemap
and collection of operational layers, and displays this content on screen.
User interactions such as pan, zoom, tilt, rotate, and identify or selection are supported in the SceneView using touch, mouse, keyboard or pen/pencil. If required, you can override keys, clicks, and gestures to provide a specific user experience.
The visible area (Viewpoint
) of a SceneView is defined by the position and orientation of a
Camera
. To determine the current visible area, call GeoView.getCurrentViewpoint(Viewpoint.Type)
. Make
sure that any user-initiated or programmatic navigation is complete before getting the current Viewpoint
by calling GeoView.navigatingProperty()
.
You can programmatically set the visible area by specifying a viewpoint. For example, to zoom to the
Viewpoint
specified by a camera, pass the Camera
to the SceneView using one of its methods, such
as setViewpointCamera(Camera)
. The SceneView has a camera controller
(setCameraController(CameraController)
) to manage the camera's movement and user interactions.
In an MVC architecture, the SceneView represents the View tier. The Model tier is represented by the
ArcGISScene
object which can provide a collection of operational layers, a Basemap
and a Surface
. You can
only set one ArcGISScene
per SceneView, but you can swap the Node.sceneProperty()
with another when the
application is running.
See Scene view for more information.
This class must only be created and used on the UI thread.
ArcGISScene scene = new ArcGISScene(BasemapStyle.ARCGIS_LIGHT_GRAY); SceneView sceneView = new SceneView(); sceneView.setArcGISScene(scene);
- Since:
- 100.0.0
- See Also:
-
Property Summary
TypePropertyDescriptionThe color of the scene view's ambient light.The scene that theSceneView
is displaying.The effect applied to the scene's atmosphere.The ratio indicating how much the vertical field of view is distorted.The horizontal field of view of the scene view in degrees.The visual effect of outer space in the scene view.The type of ambient sunlight and shadows in the scene view.The calendar that specifies the position of the sun in the scene view.Properties inherited from class com.esri.arcgisruntime.mapping.view.GeoView
attributionText, attributionTextVisible, attributionTop, drawStatus, enableKeyboardNavigation, enableMousePan, enableMouseZoom, enableTouchPan, enableTouchRotate, enableTouchZoom, labeling, navigating, selectionProperties, spatialReference, timeExtent
Properties inherited from class javafx.scene.control.Control
contextMenu, skin, tooltip
Properties inherited from class javafx.scene.layout.Region
background, border, cacheShape, centerShape, height, insets, maxHeight, maxWidth, minHeight, minWidth, opaqueInsets, padding, prefHeight, prefWidth, scaleShape, shape, snapToPixel, width
Properties inherited from class javafx.scene.Parent
needsLayout
Properties inherited from class javafx.scene.Node
accessibleHelp, accessibleRoleDescription, accessibleRole, accessibleText, blendMode, boundsInLocal, boundsInParent, cacheHint, cache, clip, cursor, depthTest, disabled, disable, effectiveNodeOrientation, effect, eventDispatcher, focused, focusTraversable, hover, id, inputMethodRequests, layoutBounds, layoutX, layoutY, localToParentTransform, localToSceneTransform, managed, mouseTransparent, nodeOrientation, onContextMenuRequested, onDragDetected, onDragDone, onDragDropped, onDragEntered, onDragExited, onDragOver, onInputMethodTextChanged, onKeyPressed, onKeyReleased, onKeyTyped, onMouseClicked, onMouseDragEntered, onMouseDragExited, onMouseDragged, onMouseDragOver, onMouseDragReleased, onMouseEntered, onMouseExited, onMouseMoved, onMousePressed, onMouseReleased, onRotate, onRotationFinished, onRotationStarted, onScrollFinished, onScroll, onScrollStarted, onSwipeDown, onSwipeLeft, onSwipeRight, onSwipeUp, onTouchMoved, onTouchPressed, onTouchReleased, onTouchStationary, onZoomFinished, onZoom, onZoomStarted, opacity, parent, pickOnBounds, pressed, rotate, rotationAxis, scaleX, scaleY, scaleZ, scene, style, translateX, translateY, translateZ, viewOrder, visible
-
Nested Class Summary
Modifier and TypeClassDescriptionstatic class
Default listener to handle input events on the scene view. -
Field Summary
Fields inherited from class javafx.scene.layout.Region
USE_COMPUTED_SIZE, USE_PREF_SIZE
Fields inherited from class javafx.scene.Node
BASELINE_OFFSET_SAME_AS_HEIGHT
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionThe color of the scene view's ambient light.The scene that theSceneView
is displaying.The effect applied to the scene's atmosphere.The ratio indicating how much the vertical field of view is distorted.The horizontal field of view of the scene view in degrees.Gets the value of theambientLightColor
property.Gets a modifiable list of analysis overlays that render the results of 3D visual analysis on the scene view.Gets theArcGISScene
displayed in this view.Returns the atmosphere effect on the scene view.Gets the camera controller manages the position, orientation, and movement of the camera for a SceneView.Retrieves the camera that displays the current viewpoint.double
Gets the value of thefieldOfView
property.double
Gets the value of thefieldOfViewDistortionRatio
property.Gets a modifiable list of overlays for displaying images in the scene view.Gets the space effect on the scene view.Gets the spatial reference.Returns the type of Sun lighting applied to the scene view.Gets the Date and Time that determine the position of the Sun in the sky.locationToScreen
(Point location) Converts a location in map coordinates to a point in JavaFX local coordinates relative to the upper-left corner of the scene view.screenToBaseSurface
(Point2D screenPoint) Converts the specified JavaFX local coordinate, relative to the upper-left corner of the scene view, to a location on the base surface in map coordinates.screenToLocationAsync
(Point2D screenPoint) Asynchronously converts a screen coordinate relative to the upper-left corner of the scene view to a location in map coordinates.void
setAmbientLightColor
(int color) Deprecated, for removal: This API element is subject to removal in a future version.void
setAmbientLightColor
(Color color) Sets the value of theambientLightColor
property.void
setArcGISScene
(ArcGISScene scene) Sets the scene that the SceneView is displaying.void
setAtmosphereEffect
(AtmosphereEffect atmosphereEffect) Sets the effect to be applied to the scene view's atmosphere.void
setCameraController
(CameraController cameraController) Sets the camera controller manages the position, orientation, and movement of the camera for a SceneView.void
setSpaceEffect
(SpaceEffect spaceEffect) Sets the effect to be applied to the scene view's background.void
setSunLighting
(LightingMode lightingMode) Sets the type of sun lighting to be applied to the scene view.void
setSunTime
(Calendar sunTime) Sets the Date and Time that determine the position of the Sun in the sky.void
setViewpointCamera
(Camera camera) Immediately changes the display to the viewpoint specified by the given camera.setViewpointCameraAsync
(Camera camera) Changes the display to the new camera viewpoint asynchronously.setViewpointCameraAsync
(Camera camera, float durationSeconds) Animates the display to the viewpoint specified by the given camera using the specified duration to arrive.The visual effect of outer space in the scene view.The type of ambient sunlight and shadows in the scene view.The calendar that specifies the position of the sun in the scene view.Methods inherited from class com.esri.arcgisruntime.mapping.view.GeoView
addAttributionTextChangedListener, addDrawStatusChangedListener, addLayerViewStateChangedListener, addNavigationChangedListener, addSpatialReferenceChangedListener, addTimeExtentChangedListener, addViewpointChangedListener, attributionTextProperty, attributionTextVisibleProperty, attributionTopProperty, createDefaultSkin, dispose, drawStatusProperty, enableKeyboardNavigationProperty, enableMousePanProperty, enableMouseZoomProperty, enableTouchPanProperty, enableTouchRotateProperty, enableTouchZoomProperty, exportImageAsync, getAttributionText, getAttributionTop, getCallout, getCurrentViewpoint, getDrawStatus, getGraphicsOverlays, getInteractionListener, getLabeling, getSelectionProperties, getTimeExtent, getViewStateForLayer, identifyGraphicsOverlayAsync, identifyGraphicsOverlayAsync, identifyGraphicsOverlaysAsync, identifyGraphicsOverlaysAsync, identifyLayerAsync, identifyLayerAsync, identifyLayersAsync, identifyLayersAsync, isAttributionTextVisible, isEnableKeyboardNavigation, isEnableMousePan, isEnableMouseZoom, isEnableTouchPan, isEnableTouchRotate, isEnableTouchZoom, isNavigating, isResizable, isWrapAroundEnabled, labelingProperty, navigatingProperty, removeAttributionTextChangedListener, removeDrawStatusChangedListener, removeLayerViewStateChangedListener, removeNavigationChangedListener, removeSpatialReferenceChangedListener, removeTimeExtentChangedListener, removeViewpointChangedListener, selectionPropertiesProperty, setAttributionTextVisible, setBookmarkAsync, setEnableKeyboardNavigation, setEnableMousePan, setEnableMouseZoom, setEnableTouchPan, setEnableTouchRotate, setEnableTouchZoom, setInteractionListener, setLabeling, setTimeExtent, setViewpoint, setViewpointAsync, setViewpointAsync, spatialReferenceProperty, timeExtentProperty
Methods inherited from class javafx.scene.control.Control
computeMaxHeight, computeMaxWidth, computeMinHeight, computeMinWidth, computePrefHeight, computePrefWidth, contextMenuProperty, executeAccessibleAction, getBaselineOffset, getClassCssMetaData, getContextMenu, getControlCssMetaData, getCssMetaData, getInitialFocusTraversable, getSkin, getTooltip, layoutChildren, queryAccessibleAttribute, setContextMenu, setSkin, setTooltip, skinProperty, tooltipProperty
Methods inherited from class javafx.scene.layout.Region
backgroundProperty, borderProperty, cacheShapeProperty, centerShapeProperty, getBackground, getBorder, getHeight, getInsets, getMaxHeight, getMaxWidth, getMinHeight, getMinWidth, getOpaqueInsets, getPadding, getPrefHeight, getPrefWidth, getShape, getUserAgentStylesheet, getWidth, heightProperty, insetsProperty, isCacheShape, isCenterShape, isScaleShape, isSnapToPixel, layoutInArea, layoutInArea, layoutInArea, layoutInArea, maxHeight, maxHeightProperty, maxWidth, maxWidthProperty, minHeight, minHeightProperty, minWidth, minWidthProperty, opaqueInsetsProperty, paddingProperty, positionInArea, positionInArea, prefHeight, prefHeightProperty, prefWidth, prefWidthProperty, resize, scaleShapeProperty, setBackground, setBorder, setCacheShape, setCenterShape, setHeight, setMaxHeight, setMaxSize, setMaxWidth, setMinHeight, setMinSize, setMinWidth, setOpaqueInsets, setPadding, setPrefHeight, setPrefSize, setPrefWidth, setScaleShape, setShape, setSnapToPixel, setWidth, shapeProperty, snappedBottomInset, snappedLeftInset, snappedRightInset, snappedTopInset, snapPosition, snapPositionX, snapPositionY, snapSize, snapSizeX, snapSizeY, snapSpace, snapSpaceX, snapSpaceY, snapToPixelProperty, widthProperty
Methods inherited from class javafx.scene.Parent
getChildren, getChildrenUnmodifiable, getManagedChildren, getStylesheets, isNeedsLayout, layout, lookup, needsLayoutProperty, requestLayout, requestParentLayout, setNeedsLayout, updateBounds
Methods inherited from class javafx.scene.Node
accessibleHelpProperty, accessibleRoleDescriptionProperty, accessibleRoleProperty, accessibleTextProperty, addEventFilter, addEventHandler, applyCss, autosize, blendModeProperty, boundsInLocalProperty, boundsInParentProperty, buildEventDispatchChain, cacheHintProperty, cacheProperty, clipProperty, computeAreaInScreen, contains, contains, cursorProperty, depthTestProperty, disabledProperty, disableProperty, effectiveNodeOrientationProperty, effectProperty, eventDispatcherProperty, fireEvent, focusedProperty, focusTraversableProperty, getAccessibleHelp, getAccessibleRole, getAccessibleRoleDescription, getAccessibleText, getBlendMode, getBoundsInLocal, getBoundsInParent, getCacheHint, getClip, getContentBias, getCursor, getDepthTest, getEffect, getEffectiveNodeOrientation, getEventDispatcher, getId, getInitialCursor, getInputMethodRequests, getLayoutBounds, getLayoutX, getLayoutY, getLocalToParentTransform, getLocalToSceneTransform, getNodeOrientation, getOnContextMenuRequested, getOnDragDetected, getOnDragDone, getOnDragDropped, getOnDragEntered, getOnDragExited, getOnDragOver, getOnInputMethodTextChanged, getOnKeyPressed, getOnKeyReleased, getOnKeyTyped, getOnMouseClicked, getOnMouseDragEntered, getOnMouseDragExited, getOnMouseDragged, getOnMouseDragOver, getOnMouseDragReleased, getOnMouseEntered, getOnMouseExited, getOnMouseMoved, getOnMousePressed, getOnMouseReleased, getOnRotate, getOnRotationFinished, getOnRotationStarted, getOnScroll, getOnScrollFinished, getOnScrollStarted, getOnSwipeDown, getOnSwipeLeft, getOnSwipeRight, getOnSwipeUp, getOnTouchMoved, getOnTouchPressed, getOnTouchReleased, getOnTouchStationary, getOnZoom, getOnZoomFinished, getOnZoomStarted, getOpacity, getParent, getProperties, getPseudoClassStates, getRotate, getRotationAxis, getScaleX, getScaleY, getScaleZ, getScene, getStyle, getStyleableParent, getStyleClass, getTransforms, getTranslateX, getTranslateY, getTranslateZ, getTypeSelector, getUserData, getViewOrder, hasProperties, hoverProperty, idProperty, inputMethodRequestsProperty, intersects, intersects, isCache, isDisable, isDisabled, isFocused, isFocusTraversable, isHover, isManaged, isMouseTransparent, isPickOnBounds, isPressed, isVisible, layoutBoundsProperty, layoutXProperty, layoutYProperty, localToParent, localToParent, localToParent, localToParent, localToParent, localToParentTransformProperty, localToScene, localToScene, localToScene, localToScene, localToScene, localToScene, localToScene, localToScene, localToScene, localToScene, localToSceneTransformProperty, localToScreen, localToScreen, localToScreen, localToScreen, localToScreen, lookupAll, managedProperty, mouseTransparentProperty, nodeOrientationProperty, notifyAccessibleAttributeChanged, onContextMenuRequestedProperty, onDragDetectedProperty, onDragDoneProperty, onDragDroppedProperty, onDragEnteredProperty, onDragExitedProperty, onDragOverProperty, onInputMethodTextChangedProperty, onKeyPressedProperty, onKeyReleasedProperty, onKeyTypedProperty, onMouseClickedProperty, onMouseDragEnteredProperty, onMouseDragExitedProperty, onMouseDraggedProperty, onMouseDragOverProperty, onMouseDragReleasedProperty, onMouseEnteredProperty, onMouseExitedProperty, onMouseMovedProperty, onMousePressedProperty, onMouseReleasedProperty, onRotateProperty, onRotationFinishedProperty, onRotationStartedProperty, onScrollFinishedProperty, onScrollProperty, onScrollStartedProperty, onSwipeDownProperty, onSwipeLeftProperty, onSwipeRightProperty, onSwipeUpProperty, onTouchMovedProperty, onTouchPressedProperty, onTouchReleasedProperty, onTouchStationaryProperty, onZoomFinishedProperty, onZoomProperty, onZoomStartedProperty, opacityProperty, parentProperty, parentToLocal, parentToLocal, parentToLocal, parentToLocal, parentToLocal, pickOnBoundsProperty, pressedProperty, pseudoClassStateChanged, relocate, removeEventFilter, removeEventHandler, requestFocus, resizeRelocate, rotateProperty, rotationAxisProperty, scaleXProperty, scaleYProperty, scaleZProperty, sceneProperty, sceneToLocal, sceneToLocal, sceneToLocal, sceneToLocal, sceneToLocal, sceneToLocal, sceneToLocal, sceneToLocal, screenToLocal, screenToLocal, screenToLocal, setAccessibleHelp, setAccessibleRole, setAccessibleRoleDescription, setAccessibleText, setBlendMode, setCache, setCacheHint, setClip, setCursor, setDepthTest, setDisable, setDisabled, setEffect, setEventDispatcher, setEventHandler, setFocused, setFocusTraversable, setHover, setId, setInputMethodRequests, setLayoutX, setLayoutY, setManaged, setMouseTransparent, setNodeOrientation, setOnContextMenuRequested, setOnDragDetected, setOnDragDone, setOnDragDropped, setOnDragEntered, setOnDragExited, setOnDragOver, setOnInputMethodTextChanged, setOnKeyPressed, setOnKeyReleased, setOnKeyTyped, setOnMouseClicked, setOnMouseDragEntered, setOnMouseDragExited, setOnMouseDragged, setOnMouseDragOver, setOnMouseDragReleased, setOnMouseEntered, setOnMouseExited, setOnMouseMoved, setOnMousePressed, setOnMouseReleased, setOnRotate, setOnRotationFinished, setOnRotationStarted, setOnScroll, setOnScrollFinished, setOnScrollStarted, setOnSwipeDown, setOnSwipeLeft, setOnSwipeRight, setOnSwipeUp, setOnTouchMoved, setOnTouchPressed, setOnTouchReleased, setOnTouchStationary, setOnZoom, setOnZoomFinished, setOnZoomStarted, setOpacity, setPickOnBounds, setPressed, setRotate, setRotationAxis, setScaleX, setScaleY, setScaleZ, setStyle, setTranslateX, setTranslateY, setTranslateZ, setUserData, setViewOrder, setVisible, snapshot, snapshot, startDragAndDrop, startFullDrag, styleProperty, toBack, toFront, toString, translateXProperty, translateYProperty, translateZProperty, usesMirroring, viewOrderProperty, visibleProperty
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
Methods inherited from interface com.esri.arcgisruntime.mapping.view.SceneViewNavigation
addDrawStatusChangedListener, addNavigationChangedListener, getCurrentViewpoint, removeDrawStatusChangedListener, removeNavigationChangedListener, setViewpoint, setViewpointAsync, setViewpointAsync
Methods inherited from interface javafx.css.Styleable
getStyleableNode
-
Property Details
-
arcGISScene
The scene that theSceneView
is displaying.If you assign an
ArcGISScene
to aSceneView
, the scene, itsSurface
,Basemap
, and collection of operational layers automatically start to load. When loading completes, the layers and basemap are rendered over the Surface in the scene view.You can load an
ArcGISScene
into your app before you assign it to aSceneView
by callingGeoModel.loadAsync()
. This is useful if you want to validate the content of a scene before you display it.- Since:
- 200.0.0
- See Also:
-
fieldOfView
The horizontal field of view of the scene view in degrees.The value of the field of view is influenced by the size and orientation of the device screen. A landscape orientation has a larger field of view value than a portrait orientation.
- Since:
- 200.0.0
- See Also:
-
fieldOfViewDistortionRatio
The ratio indicating how much the vertical field of view is distorted.A distortion factor less than 1.0 causes the visuals to be stretched taller in comparison to their width. A distortion factor greater than 1.0 causes the visuals to be shrunk shorter in comparison to their width.
The default value is 1.0.
- Since:
- 200.0.0
- See Also:
-
ambientLightColor
The color of the scene view's ambient light.The ambient light is visible if the
getSunLighting()
is set toLightingMode.LIGHT
orLightingMode.LIGHT_AND_SHADOWS
.Attempting to set the color to null will throw an exception.
- Since:
- 200.0.0
- See Also:
-
atmosphereEffect
The effect applied to the scene's atmosphere.The default value is
AtmosphereEffect.HORIZON_ONLY
.This property must not be set to null.
- Since:
- 200.0.0
- See Also:
-
sunTime
The calendar that specifies the position of the sun in the scene view.The position of sunset, sunrise, and the night-time area of darkness are visible in the scene view as calculated from the
sunTimeProperty()
value. These lighting effects are visible if you have set thesunTimeProperty()
modes ofLightingMode.LIGHT
andLightingMode.LIGHT_AND_SHADOWS
.The default value is Fri Sep 22 2000 12:00:00 GMT+0000.
This property must not be set to null.
- Since:
- 200.0.0
- See Also:
-
sunLighting
The type of ambient sunlight and shadows in the scene view.LightingMode.LIGHT
andLightingMode.LIGHT_AND_SHADOWS
display ambient light according to the specifiedambientLightColorProperty()
.The default value is
LightingMode.NO_LIGHT
.This property must not be set to null.
- Since:
- 200.0.0
- See Also:
-
spaceEffect
The visual effect of outer space in the scene view. The modes are black with stars or transparent.The default value is
SpaceEffect.STARS
.This property must not be set to null.
- Since:
- 200.0.0
- See Also:
-
-
Constructor Details
-
SceneView
public SceneView()Creates a new scene view- Since:
- 100.0.0
-
-
Method Details
-
arcGISSceneProperty
The scene that theSceneView
is displaying.If you assign an
ArcGISScene
to aSceneView
, the scene, itsSurface
,Basemap
, and collection of operational layers automatically start to load. When loading completes, the layers and basemap are rendered over the Surface in the scene view.You can load an
ArcGISScene
into your app before you assign it to aSceneView
by callingGeoModel.loadAsync()
. This is useful if you want to validate the content of a scene before you display it.- Returns:
- the
arcGISScene
property - Since:
- 200.0.0
- See Also:
-
setArcGISScene
Sets the scene that the SceneView is displaying.If you assign an
ArcGISScene
to a SceneView, the scene, itsSurface
,Basemap
, and collection of operational layers automatically start to load. When loading completes, the layers and basemap are rendered over theSurface
in the scene view.You can load an
ArcGISScene
into your app before you assign it to a SceneView by callingGeoModel.loadAsync()
. This is useful if you want to validate the content of a scene before you display it.- Parameters:
scene
- the scene that the SceneView is displaying- Since:
- 100.0.0
-
getArcGISScene
Gets theArcGISScene
displayed in this view.- Returns:
- the ArcGISScene
- Since:
- 100.0.0
-
fieldOfViewProperty
The horizontal field of view of the scene view in degrees.The value of the field of view is influenced by the size and orientation of the device screen. A landscape orientation has a larger field of view value than a portrait orientation.
- Returns:
- the
fieldOfView
property - Since:
- 200.0.0
- See Also:
-
getFieldOfView
public double getFieldOfView()Gets the value of thefieldOfView
property.- Property description:
- The horizontal field of view of the scene view in degrees.
The value of the field of view is influenced by the size and orientation of the device screen. A landscape orientation has a larger field of view value than a portrait orientation.
- Returns:
- the value of the
fieldOfView
property - Since:
- 200.0.0
- See Also:
-
fieldOfViewDistortionRatioProperty
The ratio indicating how much the vertical field of view is distorted.A distortion factor less than 1.0 causes the visuals to be stretched taller in comparison to their width. A distortion factor greater than 1.0 causes the visuals to be shrunk shorter in comparison to their width.
The default value is 1.0.
- Returns:
- the
fieldOfViewDistortionRatio
property - Since:
- 200.0.0
- See Also:
-
getFieldOfViewDistortionRatio
public double getFieldOfViewDistortionRatio()Gets the value of thefieldOfViewDistortionRatio
property.- Property description:
- The ratio indicating how much the vertical field of view is distorted.
A distortion factor less than 1.0 causes the visuals to be stretched taller in comparison to their width. A distortion factor greater than 1.0 causes the visuals to be shrunk shorter in comparison to their width.
The default value is 1.0.
- Returns:
- the value of the
fieldOfViewDistortionRatio
property - Since:
- 200.0.0
- See Also:
-
setViewpointCamera
Immediately changes the display to the viewpoint specified by the given camera.- Specified by:
setViewpointCamera
in interfaceSceneViewNavigation
- Parameters:
camera
- the camera to set- Throws:
IllegalArgumentException
- if camera is null- Since:
- 100.0.0
-
setViewpointCameraAsync
Changes the display to the new camera viewpoint asynchronously.Use
setViewpointCameraAsync(Camera, float)
to set a viewpoint that animates over a specified duration.- Returns:
- a ListenableFuture. Add a listener to this to know when the viewpoint has finished animating. The result of the future indicates if the operation completed successfully or not.
- Throws:
IllegalArgumentException
- if the camera is null- Since:
- 100.0.0
-
setViewpointCameraAsync
Animates the display to the viewpoint specified by the given camera using the specified duration to arrive.- Parameters:
camera
- the new camera information for the scene viewdurationSeconds
- the time for the transition animation to complete, in seconds- Returns:
- a ListenableFuture. Add a listener to this to know when the viewpoint has finished animating. The result of the future indicates if the operation completed successfully or not.
- Throws:
IllegalArgumentException
- if the camera is null- Since:
- 100.0.0
-
getCurrentViewpointCamera
Retrieves the camera that displays the current viewpoint.- Specified by:
getCurrentViewpointCamera
in interfaceSceneViewNavigation
- Returns:
- the current camera
- Since:
- 100.0.0
-
getSpatialReference
Gets the spatial reference.- Specified by:
getSpatialReference
in classGeoView
- Returns:
- the spatial reference, null if the ArcGISScene is null
- Since:
- 100.0.0
-
ambientLightColorProperty
The color of the scene view's ambient light.The ambient light is visible if the
getSunLighting()
is set toLightingMode.LIGHT
orLightingMode.LIGHT_AND_SHADOWS
.Attempting to set the color to null will throw an exception.
- Returns:
- the
ambientLightColor
property - Since:
- 200.0.0
- See Also:
-
getAmbientLightColor
Gets the value of theambientLightColor
property.- Property description:
- The color of the scene view's ambient light.
The ambient light is visible if the
getSunLighting()
is set toLightingMode.LIGHT
orLightingMode.LIGHT_AND_SHADOWS
.Attempting to set the color to null will throw an exception.
- Returns:
- the value of the
ambientLightColor
property - Since:
- 200.0.0
- See Also:
-
setAmbientLightColor
Sets the value of theambientLightColor
property.- Property description:
- The color of the scene view's ambient light.
The ambient light is visible if the
getSunLighting()
is set toLightingMode.LIGHT
orLightingMode.LIGHT_AND_SHADOWS
.Attempting to set the color to null will throw an exception.
- Parameters:
color
- the value for theambientLightColor
property- Since:
- 200.0.0
- See Also:
-
setAmbientLightColor
Deprecated, for removal: This API element is subject to removal in a future version.as of 200.0.0, replaced bysetAmbientLightColor(Color)
Sets the color of the ambient light.- Parameters:
color
- the color of the ambient light, in 0xAARRGGBB format- Since:
- 100.0.0
-
atmosphereEffectProperty
The effect applied to the scene's atmosphere.The default value is
AtmosphereEffect.HORIZON_ONLY
.This property must not be set to null.
- Returns:
- the
atmosphereEffect
property - Since:
- 200.0.0
- See Also:
-
setAtmosphereEffect
Sets the effect to be applied to the scene view's atmosphere.- Parameters:
atmosphereEffect
- the atmosphere effect- Throws:
IllegalArgumentException
- if atmosphereEffect is null- Since:
- 100.0.0
-
getAtmosphereEffect
Returns the atmosphere effect on the scene view.The default value is
AtmosphereEffect.HORIZON_ONLY
.- Returns:
- the atmosphere effect on the scene view
- Since:
- 100.0.0
-
sunTimeProperty
The calendar that specifies the position of the sun in the scene view.The position of sunset, sunrise, and the night-time area of darkness are visible in the scene view as calculated from the
sunTimeProperty()
value. These lighting effects are visible if you have set thesunTimeProperty()
modes ofLightingMode.LIGHT
andLightingMode.LIGHT_AND_SHADOWS
.The default value is Fri Sep 22 2000 12:00:00 GMT+0000.
This property must not be set to null.
- Returns:
- the
sunTime
property - Since:
- 200.0.0
- See Also:
-
setSunTime
Sets the Date and Time that determine the position of the Sun in the sky.- Parameters:
sunTime
- the Date and Time that determine the position of the Sun in the sky- Throws:
IllegalArgumentException
- if sunTime is null- Since:
- 100.0.0
- See Also:
-
getSunTime
Gets the Date and Time that determine the position of the Sun in the sky. Default is Fri Sep 22 2000 12:00:00 GMT+0000.- Returns:
- the Date and Time that determine the position of the Sun in the sky
- Since:
- 100.0.0
-
sunLightingProperty
The type of ambient sunlight and shadows in the scene view.LightingMode.LIGHT
andLightingMode.LIGHT_AND_SHADOWS
display ambient light according to the specifiedambientLightColorProperty()
.The default value is
LightingMode.NO_LIGHT
.This property must not be set to null.
- Returns:
- the
sunLighting
property - Since:
- 200.0.0
- See Also:
-
setSunLighting
Sets the type of sun lighting to be applied to the scene view. For example, this can be used to control whether the shadows of terrain and 3D models are cast.- Parameters:
lightingMode
- the lighting mode to be applied for this scene view- Throws:
IllegalArgumentException
- if lightingMode is null- Since:
- 100.0.0
- See Also:
-
getSunLighting
Returns the type of Sun lighting applied to the scene view.Default is
LightingMode.NO_LIGHT
.- Returns:
- the type of Sun lighting
- Since:
- 100.0.0
-
locationToScreen
Converts a location in map coordinates to a point in JavaFX local coordinates relative to the upper-left corner of the scene view.The screen coordinates are in device-independent pixels (DIP) relative to the upper-left corner of the scene view at position 0,0. The
LocationToScreenResult
indicates whether the screen coordinates are visible in the scene view. They can be invisible if they are on the other side of the globe, not in theViewpoint
, or are blocked by the base surface or elevation layer.To call this method, assign a scene to the scene view, ensure that it is loaded and the draw status is
DrawStatus.COMPLETED
.- Specified by:
locationToScreen
in interfaceSceneViewNavigation
- Parameters:
location
- a location defined within the spatial reference of the scene view- Returns:
- the location to screen result
- Throws:
IllegalArgumentException
- if location is null- Since:
- 100.0.0
-
screenToBaseSurface
Converts the specified JavaFX local coordinate, relative to the upper-left corner of the scene view, to a location on the base surface in map coordinates.To call this method, assign a scene to the scene view, ensure that it is loaded and the draw status is
DrawStatus.COMPLETED
.- Specified by:
screenToBaseSurface
in interfaceSceneViewNavigation
- Parameters:
screenPoint
- the JavaFX local coordinates- Returns:
- the scene location on the base surface
- Throws:
IllegalArgumentException
- if screenPoint is null- Since:
- 100.0.0
-
screenToLocationAsync
Asynchronously converts a screen coordinate relative to the upper-left corner of the scene view to a location in map coordinates.This is a high performance calculation executed on the GPU using a triangular mesh. Note that elevation values are approximated, and as the distance between the camera and the surface increases, the precision of the elevation value decreases.
To call this method, assign a scene to the scene view, ensure that it is loaded and the draw status is
DrawStatus.COMPLETED
.- Parameters:
screenPoint
- the JavaFX local coordinates- Returns:
- a ListenableFuture. Add a listener to this to know when the result is ready. The result of the future is the location of the screen point.
- Throws:
IllegalArgumentException
- if screenPoint is null- Since:
- 100.0.0
-
setCameraController
Sets the camera controller manages the position, orientation, and movement of the camera for a SceneView.The controller handles user-interaction with the SceneView and updates the
Camera
. You can assign aCameraController
with a specific navigation mode that is free roaming, following a moving target, fixed on a stationary target, or that supports AR transformation matrices. For more information, seeCameraController
.- Parameters:
cameraController
- camera controller- Throws:
IllegalArgumentException
- if cameraController is null- Since:
- 100.1.0
-
getCameraController
Gets the camera controller manages the position, orientation, and movement of the camera for a SceneView.The controller handles user-interaction with the SceneView and updates the
Camera
. You can assign aCameraController
with a specific navigation mode that is free roaming, following a moving target, fixed on a stationary target, or that supports AR transformation matrices. For more information, seeCameraController
.The default camera is the
GlobeCameraController
.- Returns:
- the camera controller manages the position, orientation, and movement of the camera for a SceneView
- Since:
- 100.1.0
-
getAnalysisOverlays
Gets a modifiable list of analysis overlays that render the results of 3D visual analysis on the scene view.Dynamic 3D analyses, such as
LineOfSight
andViewshed
, generate visual results that are rendered on the scene view. To display the results, add theAnalysis
to a collection ofAnalysisOverlay.getAnalyses()
and then add theAnalysisOverlay
to the collection ofgetAnalysisOverlays()
.Note that the
SceneView.getAnalysisOverlays()
collection can be empty but is never null. It's created for a specific SceneView so you can't reuse anAnalysisOverlay
collection from another SceneView. EachAnalysisOverlay
can only exist in oneSceneView.getAnalysisOverlays()
collection.- Returns:
- a collection of analysis overlays that render the results of 3D visual analysis on the scene view
- Since:
- 100.2.0
-
spaceEffectProperty
The visual effect of outer space in the scene view. The modes are black with stars or transparent.The default value is
SpaceEffect.STARS
.This property must not be set to null.
- Returns:
- the
spaceEffect
property - Since:
- 200.0.0
- See Also:
-
setSpaceEffect
Sets the effect to be applied to the scene view's background.- Parameters:
spaceEffect
- the space effect- Throws:
IllegalArgumentException
- if spaceEffect is null- Since:
- 100.6.0
-
getSpaceEffect
Gets the space effect on the scene view.The default value is
SpaceEffect.STARS
.- Returns:
- the space effect on the scene view
- Since:
- 100.6.0
-
getImageOverlays
Gets a modifiable list of overlays for displaying images in the scene view.An image overlay collection cannot belong to more than one SceneView. If the collection contains multiple image overlays, they display in the order in which they were added to the collection. So the first overlay in the collection (at index 0) displays at the bottom and each one that follows displays on top of the previous ones. If the SceneView also has a GraphicsOverlay, it displays on top of the ImageOverlay.
- Returns:
- the image overlays
- Since:
- 100.8.0
-
setAmbientLightColor(Color)