モジュール javafx.graphics
パッケージ javafx.scene

クラスSubScene

  • すべての実装されたインタフェース:
    Styleable, EventTarget


    public class SubScene
    extends Node
    SubSceneクラスは、シーングラフの内容のコンテナです。 SubSceneを使用すると、シーンの各部を分離し、異なるカメラ、奥行きのバッファまたはシーンのアンチエイリアスを使用してレンダリングできます。 SubSceneは、メイン・シーンまたは別のサブシーンに埋め込まれます。

    アプリケーションは、SubSceneの作成時に深度バッファのサポートまたはシーン・アンチエイリアスのサポートをリクエストすることがあります。 3D変換のない2D形状のみが含まれるサブシーンは、深度バッファのサポートもシーン・アンチエイリアスのサポートも必要ありません。 3D図形や、3D変換のある2D形状が含まれるサブシーンは、適切な深度でソートしてレンダリングするために深度バッファのサポートが必要になることがあります。深度ファイティング(Zファイティングとも呼ばれる)を回避するには、3D変換のない2D形状に対して深度テストを無効にします。 詳細は、depthTestを参照してください。 3D形状を含むサブシーンは、シーンのアンチエイリアスを有効にすると、そのレンダリングの質を向上させることができます。

    depthBufferフラグとantiAliasingフラグは条件付き機能です。 それぞれのデフォルト値は、falseおよびSceneAntialiasing.DISABLEDです。 詳細は、ConditionalFeature.SCENE3Dを参照してください。

    次のようなユースケースが考えられます。

    • 2Dコンテンツと3Dコンテンツの混合
    • UIコントロールのオーバーレイ
    • 背景のアンダーレイ
    • ヘッドアップ表示

    1つ以上のShape3Dノードを含むSubSceneにデフォルトのヘッド・ライトが追加されますが、ライト・ノードはありません。 この光源は、Color.WHITE PointLightで、カメラの位置に配置されます。

    導入されたバージョン:
    JavaFX 8.0
    • プロパティの詳細

      • root

        public final ObjectProperty<Parent> rootProperty
        SubSceneシーン・グラフのルートNodeを定義します。 Groupをルートとして使用する場合は、シーングラフのコンテンツがSubSceneの幅と高さによってクリップされます。 SubSceneではnullのルートは許容されません。
        関連項目:
        getRoot()setRoot(Parent)
      • camera

        public final ObjectProperty<Camera> cameraProperty
        このSubSceneをレンダリングするために使用するカメラのタイプを指定します。 cameraがnullである場合、パラレル・カメラがレンダリングに使用されます。 別のSceneまたはSubSceneに属するカメラの設定は無効です。

        注意: これは条件付き機能です。 詳細は、ConditionalFeature.SCENE3Dを参照してください。

        デフォルト値:
        null
        関連項目:
        getCamera()setCamera(Camera)
      • fill

        public final ObjectProperty<Paint> fillProperty
        このSubSceneの背景の塗りつぶしを定義します。 null値は、背景なしの描画および透明なPaintの両方がサポートされていることを意味します。 デフォルト値はNullです。
        デフォルト値:
        null
        関連項目:
        getFill()setFill(Paint)
    • コンストラクタの詳細

      • SubScene

        public SubScene​(Parent root,
                        double width,
                        double height)
        特定のサイズを使用した特定のルート・ノードのSubSceneを作成します。
        パラメータ:
        root - シーングラフのルート・ノード
        width - サブシーンの幅
        height - サブシーンの高さ
        例外:
        NullPointerException - ルートがnullの場合
      • SubScene

        public SubScene​(Parent root,
                        double width,
                        double height,
                        boolean depthBuffer,
                        SceneAntialiasing antiAliasing)
        幅と高さの寸法を使用したルートで構成されるSubSceneを構築し、奥行きのバッファをこのシーンに作成するかどうかを指定し、シーンのアンチエイリアスをリクエストするかどうかを指定します。

        3D変換のない2D形状のみが含まれるサブシーンは、深度バッファのサポートもシーン・アンチエイリアスのサポートも必要ありません。 3D図形や、3D変換のある2D形状が含まれるサブシーンは、適切な深度でソートしてレンダリングするために深度バッファのサポートが必要になることがあります。深度ファイティング(Zファイティングとも呼ばれる)を回避するには、3D変換のない2D形状に対して深度テストを無効にします。 詳細は、depthTestを参照してください。 3D形状を含むサブシーンは、シーンのアンチエイリアスを有効にすると、そのレンダリングの質を向上させることができます。

        パラメータ:
        root - シーングラフのルート・ノード
        width - サブシーンの幅
        height - サブシーンの高さ
        depthBuffer - 奥行きのバッファのフラグ
        antiAliasing - サブシーンのアンチエイリアス属性。 nullはDISABLEDとして扱われます。

        depthBufferフラグとantiAliasingフラグは条件付き機能です。 それぞれのデフォルト値は、falseおよびSceneAntialiasing.DISABLEDです。 詳細は、ConditionalFeature.SCENE3Dを参照してください。

        例外:
        NullPointerException - ルートがnullの場合
        関連項目:
        Node.setDepthTest(DepthTest)
    • メソッドの詳細

      • getAntiAliasing

        public final SceneAntialiasing getAntiAliasing​()
        このSubSceneの定義されたSceneAntialiasingを返します。

        注意: これは条件付き機能です。 詳細は、ConditionalFeature.SCENE3DおよびSceneAntialiasingを参照してください。

        戻り値:
        このサブ・シーンのSceneAntialiasing
        導入されたバージョン:
        JavaFX 8.0
      • isDepthBuffer

        public final boolean isDepthBuffer​()
        このSubSceneの奥行きバッファ属性を取得します。
        戻り値:
        奥行きのバッファの属性。
      • setRoot

        public final void setRoot​(Parent value)
        プロパティrootの値を設定します。
        プロパティの説明:
        SubSceneシーン・グラフのルートNodeを定義します。 Groupをルートとして使用する場合は、シーングラフのコンテンツがSubSceneの幅と高さによってクリップされます。 SubSceneではnullのルートは許容されません。
      • getRoot

        public final Parent getRoot​()
        プロパティrootの値を取得します。
        プロパティの説明:
        SubSceneシーン・グラフのルートNodeを定義します。 Groupをルートとして使用する場合は、シーングラフのコンテンツがSubSceneの幅と高さによってクリップされます。 SubSceneではnullのルートは許容されません。
      • rootProperty

        public final ObjectProperty<Parent> rootProperty​()
        SubSceneシーン・グラフのルートNodeを定義します。 Groupをルートとして使用する場合は、シーングラフのコンテンツがSubSceneの幅と高さによってクリップされます。 SubSceneではnullのルートは許容されません。
        関連項目:
        getRoot()setRoot(Parent)
      • setCamera

        public final void setCamera​(Camera value)
        プロパティcameraの値を設定します。
        プロパティの説明:
        このSubSceneをレンダリングするために使用するカメラのタイプを指定します。 cameraがnullである場合、パラレル・カメラがレンダリングに使用されます。 別のSceneまたはSubSceneに属するカメラの設定は無効です。

        注意: これは条件付き機能です。 詳細は、ConditionalFeature.SCENE3Dを参照してください。

        デフォルト値:
        null
      • getCamera

        public final Camera getCamera​()
        プロパティcameraの値を取得します。
        プロパティの説明:
        このSubSceneをレンダリングするために使用するカメラのタイプを指定します。 cameraがnullである場合、パラレル・カメラがレンダリングに使用されます。 別のSceneまたはSubSceneに属するカメラの設定は無効です。

        注意: これは条件付き機能です。 詳細は、ConditionalFeature.SCENE3Dを参照してください。

        デフォルト値:
        null
      • cameraProperty

        public final ObjectProperty<Camera> cameraProperty​()
        このSubSceneをレンダリングするために使用するカメラのタイプを指定します。 cameraがnullである場合、パラレル・カメラがレンダリングに使用されます。 別のSceneまたはSubSceneに属するカメラの設定は無効です。

        注意: これは条件付き機能です。 詳細は、ConditionalFeature.SCENE3Dを参照してください。

        デフォルト値:
        null
        関連項目:
        getCamera()setCamera(Camera)
      • setWidth

        public final void setWidth​(double value)
        プロパティwidthの値を設定します。
        プロパティの説明:
        このSubSceneの幅を定義します。
        デフォルト値:
        0.0
      • getWidth

        public final double getWidth​()
        プロパティwidthの値を取得します。
        プロパティの説明:
        このSubSceneの幅を定義します。
        デフォルト値:
        0.0
      • setHeight

        public final void setHeight​(double value)
        プロパティheightの値を設定します。
        プロパティの説明:
        このSubSceneの高さを定義します。
        デフォルト値:
        0.0
      • getHeight

        public final double getHeight​()
        プロパティheightの値を取得します。
        プロパティの説明:
        このSubSceneの高さを定義します。
        デフォルト値:
        0.0
      • setFill

        public final void setFill​(Paint value)
        プロパティfillの値を設定します。
        プロパティの説明:
        このSubSceneの背景の塗りつぶしを定義します。 null値は、背景なしの描画および透明なPaintの両方がサポートされていることを意味します。 デフォルト値はNullです。
        デフォルト値:
        null
      • getFill

        public final Paint getFill​()
        プロパティfillの値を取得します。
        プロパティの説明:
        このSubSceneの背景の塗りつぶしを定義します。 null値は、背景なしの描画および透明なPaintの両方がサポートされていることを意味します。 デフォルト値はNullです。
        デフォルト値:
        null
      • fillProperty

        public final ObjectProperty<Paint> fillProperty​()
        このSubSceneの背景の塗りつぶしを定義します。 null値は、背景なしの描画および透明なPaintの両方がサポートされていることを意味します。 デフォルト値はNullです。
        デフォルト値:
        null
        関連項目:
        getFill()setFill(Paint)
      • getUserAgentStylesheet

        public final String getUserAgentStylesheet​()
        このSubSceneで使用されるユーザー・エージェント・スタイルシートのURLを取得します。 URLが設定されていない場合、プラットフォーム・デフォルトのuser-agentスタイルシートが使用されます。

        シーングラフでのCSSの使用の詳細は、「CSSリファレンス・ガイド」を参照してください。

        戻り値:
        このSubSceneで使用されるユーザー・エージェント・スタイルシートのURL、またはnull (設定されていない場合)
        導入されたバージョン:
        JavaFX 8u20
      • setUserAgentStylesheet

        public final void setUserAgentStylesheet​(String url)
        プラットフォーム・デフォルトのユーザー・エージェント・スタイルシートのかわりに、このSubSceneで使用されるユーザー・エージェント・スタイルシートのURLを設定します。 URLが有効な場所に解決されない場合、プラットフォーム・デフォルトのuser-agentスタイルシートが使用されます。

        シーングラフでのCSSの使用の詳細は、「CSSリファレンス・ガイド」を参照してください。

        パラメータ:
        url - URLは、[scheme:][//authority][path]形式の階層URIです。 URLに[scheme:]コンポーネントがない場合、URLは[path]コンポーネントのみとみなされます。 [path]の前の「/」文字はすべて無視され、[path]はアプリケーションのクラスパスのルートへの相対パスとして扱われます。
        導入されたバージョン:
        JavaFX 8u20