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

クラスCamera

  • すべての実装されたインタフェース:
    Styleable, EventTarget
    直系の既知のサブクラス:
    ParallelCamera, PerspectiveCamera

    public abstract class Camera
    extends Node
    シーンをレンダリングするために使用されるカメラのベース・クラス。 カメラはウィンドウ上へのシーン座標空間のマッピングを定義します。 CameraはParallelCameraおよびPerspectiveCameraの2つの具象サブクラスを持つ抽象クラスです。

    デフォルトのカメラは、シーン座標空間でのその投影面がZ = 0となるようにシーンに配置され、Zの正の方向である画面の奥方向に向いています。 カメラから投影面までのZ軸の距離は、アタッチされているSceneのwidthおよびheight、およびそのfieldOfViewによって決まります。

    このカメラのnearClipおよびfarClipは視点座標空間で指定されます。 この空間は、視点がその起点となり、投影面はZの正の方向の視点の前方にある1つの単位として定義されます。

    次の擬似コードは、シーン座標空間の近距離および遠距離クリップの距離の計算に使用される計算式です。

     final double tanOfHalfFOV = Math.tan(Math.toRadians(FOV) / 2.0);
     final double halfHeight = HEIGHT / 2;
     final double focalLenght = halfHeight / tanOfHalfFOV;
     final double eyePositionZ = -1.0 * focalLenght;
     final double nearClipDistance = focalLenght * NEAR + eyePositionZ;
     final double farClipDistance = focalLenght * FAR + eyePositionZ;
     

    FOVfieldOfView (度数)、NEARは視点空間で指定されたnearClip、およびFARは視点空間で指定されたfarClipになります。

    注意: ParallelCameraクラスにはfieldOfViewプロパティがないため、ビューの30度垂直フィールドが使用されます。

    注意: PerspectiveCameraのfixedEyeAtCameraZero属性がtrueの場合は、視錐台に収まるようにシーン座標空間が標準化されます(詳細は、PerspectiveCameraを参照)。 このモードでは、視点座標空間はこのCameraノードのローカル座標空間と同じになります。 そのため、前述の変換式は使用されません。

    アプリケーションでCameraクラスを直接拡張しないでください。 そうすると、UnsupportedOperationExceptionがスローされることがあります。

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

      • nearClip

        public final DoubleProperty nearClipProperty
        視点座標空間のこのCameraの近距離クリッピング面の視点からの距離を指定します。 nearClipよりも視点に近いオブジェクトは描画されません。nearClipはゼロよりも大きい値として指定されます。 ゼロ以下の値は非常に小さい正数として処理されます。
        デフォルト値:
        0.1
        導入されたバージョン:
        JavaFX 8.0
        関連項目:
        getNearClip()setNearClip(double)
      • farClip

        public final DoubleProperty farClipProperty
        視点座標空間のこのCameraの遠距離クリッピング面の視点からの距離を指定します。 farClipよりも視点から離れたオブジェクトは描画されません。farClipnearClipよりも大きい値として指定されます。 nearClip以下の値は、nearClipに非常に小さい正数を加算した値として処理されます。
        デフォルト値:
        100.0
        導入されたバージョン:
        JavaFX 8.0
        関連項目:
        getFarClip()setFarClip(double)
    • コンストラクタの詳細

      • Camera

        protected Camera()
    • メソッドの詳細

      • setNearClip

        public final void setNearClip​(double value)
        プロパティnearClipの値を設定します。
        プロパティの説明:
        視点座標空間のこのCameraの近距離クリッピング面の視点からの距離を指定します。 nearClipよりも視点に近いオブジェクトは描画されません。nearClipはゼロよりも大きい値として指定されます。 ゼロ以下の値は非常に小さい正数として処理されます。
        デフォルト値:
        0.1
        導入されたバージョン:
        JavaFX 8.0
      • getNearClip

        public final double getNearClip()
        プロパティnearClipの値を取得します。
        プロパティの説明:
        視点座標空間のこのCameraの近距離クリッピング面の視点からの距離を指定します。 nearClipよりも視点に近いオブジェクトは描画されません。nearClipはゼロよりも大きい値として指定されます。 ゼロ以下の値は非常に小さい正数として処理されます。
        デフォルト値:
        0.1
        導入されたバージョン:
        JavaFX 8.0
      • nearClipProperty

        public final DoubleProperty nearClipProperty()
        視点座標空間のこのCameraの近距離クリッピング面の視点からの距離を指定します。 nearClipよりも視点に近いオブジェクトは描画されません。nearClipはゼロよりも大きい値として指定されます。 ゼロ以下の値は非常に小さい正数として処理されます。
        デフォルト値:
        0.1
        導入されたバージョン:
        JavaFX 8.0
        関連項目:
        getNearClip()setNearClip(double)
      • setFarClip

        public final void setFarClip​(double value)
        プロパティfarClipの値を設定します。
        プロパティの説明:
        視点座標空間のこのCameraの遠距離クリッピング面の視点からの距離を指定します。 farClipよりも視点から離れたオブジェクトは描画されません。farClipnearClipよりも大きい値として指定されます。 nearClip以下の値は、nearClipに非常に小さい正数を加算した値として処理されます。
        デフォルト値:
        100.0
        導入されたバージョン:
        JavaFX 8.0
      • getFarClip

        public final double getFarClip()
        プロパティfarClipの値を取得します。
        プロパティの説明:
        視点座標空間のこのCameraの遠距離クリッピング面の視点からの距離を指定します。 farClipよりも視点から離れたオブジェクトは描画されません。farClipnearClipよりも大きい値として指定されます。 nearClip以下の値は、nearClipに非常に小さい正数を加算した値として処理されます。
        デフォルト値:
        100.0
        導入されたバージョン:
        JavaFX 8.0
      • farClipProperty

        public final DoubleProperty farClipProperty()
        視点座標空間のこのCameraの遠距離クリッピング面の視点からの距離を指定します。 farClipよりも視点から離れたオブジェクトは描画されません。farClipnearClipよりも大きい値として指定されます。 nearClip以下の値は、nearClipに非常に小さい正数を加算した値として処理されます。
        デフォルト値:
        100.0
        導入されたバージョン:
        JavaFX 8.0
        関連項目:
        getFarClip()setFarClip(double)