- All Implemented Interfaces:
- Styleable,- EventTarget
public class SubScene extends Node
SubScene class is the container for content in a scene graph.
 SubScene provides separation of different parts of a scene, each
 of which can be rendered with a different camera, depth buffer, or scene
 anti-aliasing. A SubScene is embedded into the main scene or another
 sub-scene.
 
 An application may request depth buffer support or scene anti-aliasing
 support at the creation of a SubScene. A sub-scene with only 2D
 shapes and without any 3D transforms does not need a depth buffer nor scene
 anti-aliasing support. A sub-scene containing 3D shapes or 2D shapes with 3D
 transforms may use depth buffer support for proper depth sorted rendering; to
 avoid depth fighting (also known as Z fighting), disable depth testing on 2D
 shapes that have no 3D transforms. See
 depthTest for more information. A sub-scene
 with 3D shapes may enable scene anti-aliasing to improve its rendering
 quality.
 
 The depthBuffer and antiAliasing flags are conditional features. With the
 respective default values of: false and SceneAntialiasing.DISABLED.
 See ConditionalFeature.SCENE3D
 for more information.
 
Possible use cases are:
- Mixing 2D and 3D content
- Overlay for UI controls
- Underlay for background
- Heads-up display
 A default headlight will be added to a SubScene that contains one or more
 Shape3D nodes, but no light nodes. This light source is a
 Color.WHITE PointLight placed at the camera position.
 
- Since:
- JavaFX 8.0
- 
Property SummaryProperties Type Property Description ObjectProperty<Camera>cameraSpecifies the type of camera use for rendering thisSubScene.ObjectProperty<Paint>fillDefines the background fill of thisSubScene.DoublePropertyheightDefines the height of thisSubSceneObjectProperty<Parent>rootDefines the rootNodeof theSubScenescene graph.ObjectProperty<String>userAgentStylesheetDoublePropertywidthDefines the width of thisSubSceneProperties inherited from class javafx.scene.NodeaccessibleHelp, 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
- 
Field SummaryFields inherited from class javafx.scene.NodeBASELINE_OFFSET_SAME_AS_HEIGHT
- 
Constructor SummaryConstructors Constructor Description SubScene(Parent root, double width, double height)Creates aSubScenefor a specific root Node with a specific size.SubScene(Parent root, double width, double height, boolean depthBuffer, SceneAntialiasing antiAliasing)Constructs aSubSceneconsisting of a root, with a dimension of width and height, specifies whether a depth buffer is created for this scene and specifies whether scene anti-aliasing is requested.
- 
Method SummaryModifier and Type Method Description ObjectProperty<Camera>cameraProperty()Specifies the type of camera use for rendering thisSubScene.ObjectProperty<Paint>fillProperty()Defines the background fill of thisSubScene.SceneAntialiasinggetAntiAliasing()Return the definedSceneAntialiasingfor thisSubScene.CameragetCamera()Gets the value of the property camera.PaintgetFill()Gets the value of the property fill.doublegetHeight()Gets the value of the property height.ParentgetRoot()Gets the value of the property root.StringgetUserAgentStylesheet()Get the URL of the user-agent stylesheet that will be used by this SubScene.doublegetWidth()Gets the value of the property width.DoublePropertyheightProperty()Defines the height of thisSubScenebooleanisDepthBuffer()Retrieves the depth buffer attribute for thisSubScene.ObjectProperty<Parent>rootProperty()Defines the rootNodeof theSubScenescene graph.voidsetCamera(Camera value)Sets the value of the property camera.voidsetFill(Paint value)Sets the value of the property fill.voidsetHeight(double value)Sets the value of the property height.voidsetRoot(Parent value)Sets the value of the property root.voidsetUserAgentStylesheet(String url)Set the URL of the user-agent stylesheet that will be used by this SubScene in place of the the platform-default user-agent stylesheet.voidsetWidth(double value)Sets the value of the property width.ObjectProperty<String>userAgentStylesheetProperty()DoublePropertywidthProperty()Defines the width of thisSubSceneMethods inherited from class javafx.scene.NodeaccessibleHelpProperty, accessibleRoleDescriptionProperty, accessibleRoleProperty, accessibleTextProperty, addEventFilter, addEventHandler, applyCss, autosize, blendModeProperty, boundsInLocalProperty, boundsInParentProperty, buildEventDispatchChain, cacheHintProperty, cacheProperty, clipProperty, computeAreaInScreen, contains, contains, cursorProperty, depthTestProperty, disabledProperty, disableProperty, effectiveNodeOrientationProperty, effectProperty, eventDispatcherProperty, executeAccessibleAction, fireEvent, focusedProperty, focusTraversableProperty, getAccessibleHelp, getAccessibleRole, getAccessibleRoleDescription, getAccessibleText, getBaselineOffset, getBlendMode, getBoundsInLocal, getBoundsInParent, getCacheHint, getClassCssMetaData, getClip, getContentBias, getCssMetaData, getCursor, getDepthTest, getEffect, getEffectiveNodeOrientation, getEventDispatcher, getId, getInitialCursor, getInitialFocusTraversable, 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, isResizable, 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, lookup, lookupAll, managedProperty, maxHeight, maxWidth, minHeight, minWidth, 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, prefHeight, prefWidth, pressedProperty, pseudoClassStateChanged, queryAccessibleAttribute, relocate, removeEventFilter, removeEventHandler, requestFocus, resize, 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, visiblePropertyMethods inherited from class java.lang.Objectclone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface javafx.css.StyleablegetStyleableNode
- 
Property Details- 
rootDefines the rootNodeof theSubScenescene graph. If aGroupis used as the root, the contents of the scene graph will be clipped by theSubScene's width and height.SubScenedoesn't accept null root.- See Also:
- getRoot(),- setRoot(Parent)
 
- 
cameraSpecifies the type of camera use for rendering thisSubScene. Ifcamerais null, a parallel camera is used for rendering. It is illegal to set a camera that belongs to otherSceneorSubScene.Note: this is a conditional feature. See ConditionalFeature.SCENE3Dfor more information.- Default value:
- null
- See Also:
- getCamera(),- setCamera(Camera)
 
- 
widthDefines the width of thisSubScene- Default value:
- 0.0
- See Also:
- getWidth(),- setWidth(double)
 
- 
heightDefines the height of thisSubScene- Default value:
- 0.0
- See Also:
- getHeight(),- setHeight(double)
 
- 
fillDefines the background fill of thisSubScene. Both anullvalue meaning paint no background and aPaintwith transparency are supported. The default value is null.- Default value:
- null
- See Also:
- getFill(),- setFill(Paint)
 
- 
userAgentStylesheet- Since:
- JavaFX 8u20
- See Also:
- getUserAgentStylesheet(),- setUserAgentStylesheet(String)
 
 
- 
- 
Constructor Details- 
SubSceneCreates aSubScenefor a specific root Node with a specific size.- Parameters:
- root- The root node of the scene graph
- width- The width of the sub-scene
- height- The height of the sub-scene
- Throws:
- NullPointerException- if root is null
 
- 
SubScenepublic SubScene(Parent root, double width, double height, boolean depthBuffer, SceneAntialiasing antiAliasing)Constructs aSubSceneconsisting of a root, with a dimension of width and height, specifies whether a depth buffer is created for this scene and specifies whether scene anti-aliasing is requested.A sub-scene with only 2D shapes and without any 3D transforms does not need a depth buffer nor scene anti-aliasing support. A sub-scene containing 3D shapes or 2D shapes with 3D transforms may use depth buffer support for proper depth sorted rendering; to avoid depth fighting (also known as Z fighting), disable depth testing on 2D shapes that have no 3D transforms. See depthTestfor more information. A sub-scene with 3D shapes may enable scene anti-aliasing to improve its rendering quality.- Parameters:
- root- The root node of the scene graph
- width- The width of the sub-scene
- height- The height of the sub-scene
- depthBuffer- The depth buffer flag
- antiAliasing- The sub-scene anti-aliasing attribute. A value of- nullis treated as DISABLED.- The depthBuffer and antiAliasing flags are conditional features. With the respective default values of: false and - SceneAntialiasing.DISABLED. See- ConditionalFeature.SCENE3Dfor more information.
- Throws:
- NullPointerException- if root is null
- See Also:
- Node.setDepthTest(DepthTest)
 
 
- 
- 
Method Details- 
getAntiAliasingReturn the definedSceneAntialiasingfor thisSubScene.Note: this is a conditional feature. See ConditionalFeature.SCENE3DandSceneAntialiasingfor more information.- Returns:
- the SceneAntialiasing for this sub-scene
- Since:
- JavaFX 8.0
 
- 
isDepthBufferpublic final boolean isDepthBuffer()Retrieves the depth buffer attribute for thisSubScene.- Returns:
- the depth buffer attribute.
 
- 
setRootSets the value of the property root.- Property description:
- Defines the root Nodeof theSubScenescene graph. If aGroupis used as the root, the contents of the scene graph will be clipped by theSubScene's width and height.SubScenedoesn't accept null root.
 
- 
getRootGets the value of the property root.- Property description:
- Defines the root Nodeof theSubScenescene graph. If aGroupis used as the root, the contents of the scene graph will be clipped by theSubScene's width and height.SubScenedoesn't accept null root.
 
- 
rootPropertyDefines the rootNodeof theSubScenescene graph. If aGroupis used as the root, the contents of the scene graph will be clipped by theSubScene's width and height.SubScenedoesn't accept null root.- See Also:
- getRoot(),- setRoot(Parent)
 
- 
setCameraSets the value of the property camera.- Property description:
- Specifies the type of camera use for rendering this SubScene. Ifcamerais null, a parallel camera is used for rendering. It is illegal to set a camera that belongs to otherSceneorSubScene.Note: this is a conditional feature. See ConditionalFeature.SCENE3Dfor more information.
- Default value:
- null
 
- 
getCameraGets the value of the property camera.- Property description:
- Specifies the type of camera use for rendering this SubScene. Ifcamerais null, a parallel camera is used for rendering. It is illegal to set a camera that belongs to otherSceneorSubScene.Note: this is a conditional feature. See ConditionalFeature.SCENE3Dfor more information.
- Default value:
- null
 
- 
cameraPropertySpecifies the type of camera use for rendering thisSubScene. Ifcamerais null, a parallel camera is used for rendering. It is illegal to set a camera that belongs to otherSceneorSubScene.Note: this is a conditional feature. See ConditionalFeature.SCENE3Dfor more information.- Default value:
- null
- See Also:
- getCamera(),- setCamera(Camera)
 
- 
setWidthpublic final void setWidth(double value)Sets the value of the property width.- Property description:
- Defines the width of this SubScene
- Default value:
- 0.0
 
- 
getWidthpublic final double getWidth()Gets the value of the property width.- Property description:
- Defines the width of this SubScene
- Default value:
- 0.0
 
- 
widthPropertyDefines the width of thisSubScene- Default value:
- 0.0
- See Also:
- getWidth(),- setWidth(double)
 
- 
setHeightpublic final void setHeight(double value)Sets the value of the property height.- Property description:
- Defines the height of this SubScene
- Default value:
- 0.0
 
- 
getHeightpublic final double getHeight()Gets the value of the property height.- Property description:
- Defines the height of this SubScene
- Default value:
- 0.0
 
- 
heightPropertyDefines the height of thisSubScene- Default value:
- 0.0
- See Also:
- getHeight(),- setHeight(double)
 
- 
setFillSets the value of the property fill.- Property description:
- Defines the background fill of this SubScene. Both anullvalue meaning paint no background and aPaintwith transparency are supported. The default value is null.
- Default value:
- null
 
- 
getFillGets the value of the property fill.- Property description:
- Defines the background fill of this SubScene. Both anullvalue meaning paint no background and aPaintwith transparency are supported. The default value is null.
- Default value:
- null
 
- 
fillPropertyDefines the background fill of thisSubScene. Both anullvalue meaning paint no background and aPaintwith transparency are supported. The default value is null.- Default value:
- null
- See Also:
- getFill(),- setFill(Paint)
 
- 
userAgentStylesheetProperty- Since:
- JavaFX 8u20
- See Also:
- getUserAgentStylesheet(),- setUserAgentStylesheet(String)
 
- 
getUserAgentStylesheetGet the URL of the user-agent stylesheet that will be used by this SubScene. If the URL has not been set, the platform-default user-agent stylesheet will be used.For additional information about using CSS with the scene graph, see the CSS Reference Guide. - Returns:
- The URL of the user-agent stylesheet that will be used by this SubScene, or null if has not been set.
- Since:
- JavaFX 8u20
 
- 
setUserAgentStylesheetSet the URL of the user-agent stylesheet that will be used by this SubScene in place of the the platform-default user-agent stylesheet. If the URL does not resolve to a valid location, the platform-default user-agent stylesheet will be used.For additional information about using CSS with the scene graph, see the CSS Reference Guide. - Parameters:
- url- The URL is a hierarchical URI of the form [scheme:][//authority][path]. If the URL does not have a [scheme:] component, the URL is considered to be the [path] component only. Any leading '/' character of the [path] is ignored and the [path] is treated as a path relative to the root of the application's classpath.
- Since:
- JavaFX 8u20
 
 
-