com.io7m.jcamera

## Class JCameraFPSStyleAngularIntegrator

- java.lang.Object
- - com.io7m.jcamera.JCameraFPSStyleAngularIntegrator

- All Implemented Interfaces:
    JCameraFPSStyleAngularIntegratorType, JCameraIntegratorType

      @EqualityReference
      public final class JCameraFPSStyleAngularIntegrator
      extends Object
      implements JCameraFPSStyleAngularIntegratorType

  The default implementation of `JCameraFPSStyleAngularIntegratorType`.

- - ### Method Summary

    All Methods Static Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `integrate(double time)` Integrate the positions/velocities of the current camera over `d`.
    `void` | `integratorAngularSetAccelerationHorizontal(double a)` Set the acceleration around the horizontal axis to `a`.
    `void` | `integratorAngularSetAccelerationVertical(double a)` Set the acceleration around the vertical axis to `a`.
    `void` | `integratorAngularSetDragHorizontal(double d)` Set the drag around the horizontal axis to `a`.
    `void` | `integratorAngularSetDragVertical(double d)` Set the drag around the vertical axis to `a`.
    `void` | `integratorAngularSetMaximumSpeedHorizontal(double s)` Set the maximum rotation speed around the horizontal axis to `s`.
    `void` | `integratorAngularSetMaximumSpeedVertical(double s)` Set the maximum rotation speed around the vertical axis to `s` .
    `JCameraFPSStyleReadableType` | `integratorGetCamera()`
    `JCameraFPSStyleInputType` | `integratorGetInput()`
    `static JCameraFPSStyleAngularIntegratorType` | `newIntegrator(JCameraFPSStyleType in_camera, JCameraFPSStyleInputType in_input)` Construct a new integrator.

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Method Detail

    - #### newIntegrator

          public static JCameraFPSStyleAngularIntegratorType newIntegrator(JCameraFPSStyleType in_camera,
                                                                           JCameraFPSStyleInputType in_input)

      Construct a new integrator.
      Parameters:
        `in_camera` - The camera to be integrated.
        `in_input` - The input to be sampled.
      Returns:
        A new integrator

    - #### integrate

          public void integrate(double time)

      Description copied from interface: `JCameraIntegratorType`
      Integrate the positions/velocities of the current camera over `d`.
      Specified by:
        `integrate` in interface `JCameraIntegratorType`
      Parameters:
        `time` - The delta time

    - #### integratorAngularSetAccelerationHorizontal

          public void integratorAngularSetAccelerationHorizontal(double a)

      Description copied from interface: `JCameraFPSStyleAngularIntegratorType`
      Set the acceleration around the horizontal axis to `a`.
      Specified by:
        `integratorAngularSetAccelerationHorizontal` in interface `JCameraFPSStyleAngularIntegratorType`
      Parameters:
        `a` - The acceleration value.

    - #### integratorAngularSetAccelerationVertical

          public void integratorAngularSetAccelerationVertical(double a)

      Description copied from interface: `JCameraFPSStyleAngularIntegratorType`
      Set the acceleration around the vertical axis to `a`.
      Specified by:
        `integratorAngularSetAccelerationVertical` in interface `JCameraFPSStyleAngularIntegratorType`
      Parameters:
        `a` - The acceleration value.

    - #### integratorAngularSetDragHorizontal

          public void integratorAngularSetDragHorizontal(double d)

      Description copied from interface: `JCameraFPSStyleAngularIntegratorType`
      Set the drag around the horizontal axis to `a`.
      Specified by:
        `integratorAngularSetDragHorizontal` in interface `JCameraFPSStyleAngularIntegratorType`
      Parameters:
        `d` - The drag value.

    - #### integratorAngularSetDragVertical

          public void integratorAngularSetDragVertical(double d)

      Description copied from interface: `JCameraFPSStyleAngularIntegratorType`
      Set the drag around the vertical axis to `a`.
      Specified by:
        `integratorAngularSetDragVertical` in interface `JCameraFPSStyleAngularIntegratorType`
      Parameters:
        `d` - The drag value.

    - #### integratorAngularSetMaximumSpeedHorizontal

          public void integratorAngularSetMaximumSpeedHorizontal(double s)

      Description copied from interface: `JCameraFPSStyleAngularIntegratorType`
      Set the maximum rotation speed around the horizontal axis to `s`.
      Specified by:
        `integratorAngularSetMaximumSpeedHorizontal` in interface `JCameraFPSStyleAngularIntegratorType`
      Parameters:
        `s` - The maximum rotation speed.

    - #### integratorAngularSetMaximumSpeedVertical

          public void integratorAngularSetMaximumSpeedVertical(double s)

      Description copied from interface: `JCameraFPSStyleAngularIntegratorType`
      Set the maximum rotation speed around the vertical axis to `s` .
      Specified by:
        `integratorAngularSetMaximumSpeedVertical` in interface `JCameraFPSStyleAngularIntegratorType`
      Parameters:
        `s` - The maximum rotation speed.

    - #### integratorGetCamera

          public JCameraFPSStyleReadableType integratorGetCamera()

      Specified by:
        `integratorGetCamera` in interface `JCameraFPSStyleAngularIntegratorType`
      Returns:
        The camera that will be affected by the integrator

    - #### integratorGetInput

          public JCameraFPSStyleInputType integratorGetInput()

      Specified by:
        `integratorGetInput` in interface `JCameraFPSStyleAngularIntegratorType`
      Returns:
        The input used to drive the integrator.

Copyright © 2017 <code@io7m.com> http://io7m.com