com.io7m.jcamera

## Class JCameraFPSStyleLinearIntegrator

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

- All Implemented Interfaces:
    JCameraFPSStyleLinearIntegratorType, JCameraIntegratorType

      @EqualityReference
      public final class JCameraFPSStyleLinearIntegrator
      extends Object
      implements JCameraFPSStyleLinearIntegratorType

  The default implementation of `JCameraFPSStyleLinearIntegratorType`.

- - ### Method Summary

    All Methods Static Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `integrate(double t)` Integrate the positions/velocities of the current camera over `d`.
    `JCameraFPSStyleReadableType` | `integratorGetCamera()`
    `JCameraFPSStyleInputType` | `integratorGetInput()`
    `void` | `integratorLinearSetAcceleration(double a)` Set the linear acceleration to `a`.
    `void` | `integratorLinearSetDrag(double f)` Set the linear drag factor to `f`.
    `void` | `integratorLinearSetMaximumSpeed(double s)` Set the maximum linear movement speed to `s`.
    `static JCameraFPSStyleLinearIntegratorType` | `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 JCameraFPSStyleLinearIntegratorType 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 t)

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

    - #### integratorGetCamera

          public JCameraFPSStyleReadableType integratorGetCamera()

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

    - #### integratorGetInput

          public JCameraFPSStyleInputType integratorGetInput()

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

    - #### integratorLinearSetAcceleration

          public void integratorLinearSetAcceleration(double a)

      Description copied from interface: `JCameraFPSStyleLinearIntegratorType`
      Set the linear acceleration to `a`.
      Specified by:
        `integratorLinearSetAcceleration` in interface `JCameraFPSStyleLinearIntegratorType`
      Parameters:
        `a` - The linear acceleration.

    - #### integratorLinearSetDrag

          public void integratorLinearSetDrag(double f)

      Description copied from interface: `JCameraFPSStyleLinearIntegratorType`
      Set the linear drag factor to `f`.
      Specified by:
        `integratorLinearSetDrag` in interface `JCameraFPSStyleLinearIntegratorType`
      Parameters:
        `f` - The linear drag factor.

    - #### integratorLinearSetMaximumSpeed

          public void integratorLinearSetMaximumSpeed(double s)

      Description copied from interface: `JCameraFPSStyleLinearIntegratorType`
      Set the maximum linear movement speed to `s`.
      Specified by:
        `integratorLinearSetMaximumSpeed` in interface `JCameraFPSStyleLinearIntegratorType`
      Parameters:
        `s` - The maximum linear speed.

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