Interface JCameraSphericalSnapshotType

All Superinterfaces:
JCameraReadableSnapshotType, JCameraReadableType, JCameraSphericalReadableType
All Known Implementing Classes:
JCameraSphericalSnapshot

@Immutable public interface JCameraSphericalSnapshotType extends JCameraSphericalReadableType, JCameraReadableSnapshotType
An immutable snapshot of a camera.
  • Method Details

    • cameraGetRight

      @Parameter(order=0) com.io7m.jtensors.core.unparameterized.vectors.Vector3D cameraGetRight()
      Specified by:
      cameraGetRight in interface JCameraSphericalReadableType
      Returns:
      The right direction for the camera.
    • cameraGetUp

      @Parameter(order=1) com.io7m.jtensors.core.unparameterized.vectors.Vector3D cameraGetUp()
      Specified by:
      cameraGetUp in interface JCameraSphericalReadableType
      Returns:
      The up direction for the camera.
    • cameraGetForward

      @Parameter(order=2) com.io7m.jtensors.core.unparameterized.vectors.Vector3D cameraGetForward()
      Specified by:
      cameraGetForward in interface JCameraSphericalReadableType
      Returns:
      The forward direction for the camera.
    • cameraGetPosition

      @Parameter(order=3) com.io7m.jtensors.core.unparameterized.vectors.Vector3D cameraGetPosition()
      Specified by:
      cameraGetPosition in interface JCameraSphericalReadableType
      Returns:
      The position of the camera.
    • cameraGetAngleHeading

      @Parameter(order=4) double cameraGetAngleHeading()
      Specified by:
      cameraGetAngleHeading in interface JCameraSphericalReadableType
      Returns:
      The angle around the vertical axis.
    • cameraGetAngleIncline

      @Parameter(order=5) double cameraGetAngleIncline()
      Specified by:
      cameraGetAngleIncline in interface JCameraSphericalReadableType
      Returns:
      The angle around the horizontal axis.
    • cameraGetZoom

      @Parameter(order=6) double cameraGetZoom()
      Specified by:
      cameraGetZoom in interface JCameraSphericalReadableType
      Returns:
      The zoom (or radius) of the camera.
    • cameraGetForwardProjectedOnXZ

      @Parameter(order=7) com.io7m.jtensors.core.unparameterized.vectors.Vector3D cameraGetForwardProjectedOnXZ()
      Specified by:
      cameraGetForwardProjectedOnXZ in interface JCameraSphericalReadableType
      Returns:
      The forward direction for the camera, projected onto the X/Z plane.
    • cameraGetTargetPosition

      @Parameter(order=8) com.io7m.jtensors.core.unparameterized.vectors.Vector3D cameraGetTargetPosition()
      Specified by:
      cameraGetTargetPosition in interface JCameraSphericalReadableType
      Returns:
      The position of the camera target.
    • cameraMakeViewMatrix

      default com.io7m.jtensors.core.unparameterized.matrices.Matrix4x4D cameraMakeViewMatrix()
      Description copied from interface: JCameraReadableType
      Construct a view matrix for the camera.
      Specified by:
      cameraMakeViewMatrix in interface JCameraReadableType
      Returns:
      A view matrix for the camera
    • cameraMakeViewPMatrix

      default <T0, T1> com.io7m.jtensors.core.parameterized.matrices.PMatrix4x4D<T0,T1> cameraMakeViewPMatrix()
      Description copied from interface: JCameraReadableType
      Construct a view matrix for the camera.
      Specified by:
      cameraMakeViewPMatrix in interface JCameraReadableType
      Type Parameters:
      T0 - The source coordinate system
      T1 - The target coordiante system
      Returns:
      A view matrix for the camera