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

クラスPerspectiveCamera

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


    public class PerspectiveCamera
    extends Camera
    シーンをレンダリングするための透視投影カメラを指定します。

    このカメラによって、右向きのピラミッドの先端を切り取った形の透視投影の視野空間が定義されます。 視野空間はfieldOfView値を使用して変更できます。 デフォルトでは、このカメラはシーンの中央に配置され、z軸の正の方向に向かって表示されます。 このカメラで定義される座標系は、パネルの左上隅に原点があり、Y軸は下を指し、Z軸は視点から先を(画面に向かって)指します。 PerspectiveCameraノードがシーン・グラフに追加された場合、カメラの変換された位置と向きは、カメラの位置とカメラが探している方向を定義します。

    デフォルトのカメラでは、fixedEyeAtCameraZeroがfalseである場合は、目の位置のZ値がZ方向に調整されます。これにより、指定されたfieldOfViewを使用して生成された投影行列によって、Z = 0 (投影面)に、デバイス非依存ピクセルで、ParallelCameraのピクセルと一致するユニットが生成されるようになります。 シーンのサイズが変更されると、シーン内の投影面(Z = 0)のオブジェクトのサイズは同じままで、シーンで表示可能なコンテンツが増減します。

    fixedEyeAtCameraZeroがtrueの場合、目の位置はカメラのローカル座標の(0, 0, 0)に固定されます。 指定されたfieldOfViewを使用して投影行列が生成され、投影空間がビューポート(ウィンドウ)にマップされます。これにより、カバーされる投影面のデバイス非依存ピクセルが増減します。 シーンのサイズが変更されると、シーン内のオブジェクトは比率を維持したまま拡大縮小しますが、コンテンツの可視部分は変化しません。

    カメラを変換(移動)する場合は、fixedEyeAtCameraZeroをtrueに設定することをお薦めします。 fixedEyeAtCameraZeroがfalseに設定されている場合にカメラを変換すると、結果が直観的でなくなる可能性があります。

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

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

      • verticalFieldOfView

        public final BooleanProperty verticalFieldOfViewProperty
        fieldOfViewプロパティを投影の垂直方向のディメンションに適用するかどうかを定義します。 falseの場合、fieldOfViewは投影の水平ディメンションに適用されます。
        デフォルト値:
        true
        導入されたバージョン:
        JavaFX 8.0
        関連項目:
        isVerticalFieldOfView()setVerticalFieldOfView(boolean)
    • コンストラクタの詳細

      • PerspectiveCamera

        public PerspectiveCamera​()
        PerspectiveCameraの空のインスタンスを作成します。
      • PerspectiveCamera

        public PerspectiveCamera​(boolean fixedEyeAtCameraZero)
        指定されたfixedEyeAtCameraZeroフラグでPerspectiveCameraを構築します。

        デフォルトのカメラでは、fixedEyeAtCameraZeroがfalseである場合は、目の位置のZ値がZ方向に調整されます。これにより、指定されたfieldOfViewを使用して生成された投影行列によって、Z = 0 (投影面)に、デバイス非依存ピクセルで、ParallelCameraのピクセルと一致するユニットが生成されるようになります。 シーンのサイズが変更されると、シーン内の投影面(Z = 0)のオブジェクトのサイズは同じままで、シーンで表示可能なコンテンツが増減します。

        fixedEyeAtCameraZeroがtrueの場合、目の位置はカメラのローカル座標の(0, 0, 0)に固定されます。 指定されたfieldOfViewを使用して投影行列が生成され、投影空間がビューポート(ウィンドウ)にマップされます。これにより、カバーされる投影面のデバイス非依存ピクセルが増減します。 シーンのサイズが変更されると、シーン内のオブジェクトは比率を維持したまま拡大縮小しますが、コンテンツの可視部分は変化しません。

        カメラを変換(移動)する場合は、fixedEyeAtCameraZeroをtrueに設定することをお薦めします。 fixedEyeAtCameraZeroがfalseに設定されている場合にカメラを変換すると、結果が直観的でなくなる可能性があります。

        パラメータ:
        fixedEyeAtCameraZero - 目の位置がカメラのローカル座標で(0, 0, 0)に固定されている場合はtrueです。
        導入されたバージョン:
        JavaFX 8.0
    • メソッドの詳細

      • setFieldOfView

        public final void setFieldOfView​(double value)
        プロパティfieldOfViewの値を設定します。
        プロパティの説明:
        カメラ投影の視野角を度単位で指定します。
        デフォルト値:
        30.0
      • getFieldOfView

        public final double getFieldOfView​()
        プロパティfieldOfViewの値を取得します。
        プロパティの説明:
        カメラ投影の視野角を度単位で指定します。
        デフォルト値:
        30.0
      • setVerticalFieldOfView

        public final void setVerticalFieldOfView​(boolean value)
        プロパティverticalFieldOfViewの値を設定します。
        プロパティの説明:
        fieldOfViewプロパティを投影の垂直方向のディメンションに適用するかどうかを定義します。 falseの場合、fieldOfViewは投影の水平ディメンションに適用されます。
        デフォルト値:
        true
        導入されたバージョン:
        JavaFX 8.0
      • isVerticalFieldOfView

        public final boolean isVerticalFieldOfView​()
        プロパティverticalFieldOfViewの値を取得します。
        プロパティの説明:
        fieldOfViewプロパティを投影の垂直方向のディメンションに適用するかどうかを定義します。 falseの場合、fieldOfViewは投影の水平ディメンションに適用されます。
        デフォルト値:
        true
        導入されたバージョン:
        JavaFX 8.0
      • verticalFieldOfViewProperty

        public final BooleanProperty verticalFieldOfViewProperty​()
        fieldOfViewプロパティを投影の垂直方向のディメンションに適用するかどうかを定義します。 falseの場合、fieldOfViewは投影の水平ディメンションに適用されます。
        デフォルト値:
        true
        導入されたバージョン:
        JavaFX 8.0
        関連項目:
        isVerticalFieldOfView()setVerticalFieldOfView(boolean)
      • isFixedEyeAtCameraZero

        public final boolean isFixedEyeAtCameraZero​()
        このカメラがカメラの原点で固定された目の位置を使用するかどうかを示すフラグを返します。 fixedEyeAtCameraZerotrueの場合、目の位置はカメラのローカル座標で(0, 0, 0)に固定されます。 この属性は不変です。
        戻り値:
        このカメラがカメラの原点で固定された目の位置を使用するかどうかを示すフラグ
        導入されたバージョン:
        JavaFX 8.0