Package com.io7m.jcamera

# Interface JCameraSphericalInputType

All Known Implementing Classes:
  `JCameraSphericalInput`

public interface JCameraSphericalInputType
The type of inputs for spherical cameras.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `void`
  `addTargetMovingContinuousForward(double in_forward)`
  Add a movement forward to the target position.
  `void`
  `addTargetMovingContinuousRight(double in_right)`
  Add a movement right to the target position.
  `double`
  `getForwardFactor()`
  `double`
  `getRightFactor()`
  `double`
  `getTargetMovingForwardContinuous()`
  `double`
  `getTargetMovingRight()`
  `boolean`
  `isOrbitingHeadingNegative()`
  `boolean`
  `isOrbitingHeadingPositive()`
  `boolean`
  `isOrbitingInclineNegative()`
  `boolean`
  `isOrbitingInclinePositive()`
  `boolean`
  `isTargetMovingBackward()`
  `boolean`
  `isTargetMovingDown()`
  `boolean`
  `isTargetMovingForward()`
  `boolean`
  `isTargetMovingLeft()`
  `boolean`
  `isTargetMovingRight()`
  `boolean`
  `isTargetMovingUp()`
  `boolean`
  `isZoomingIn()`
  `boolean`
  `isZoomingOut()`
  `void`
  `setContinuousForwardFactor(double f)`
  Set the multiplication factor used for continuous forward/backward movement.
  `void`
  `setContinuousRightwardFactor(double f)`
  Set the multiplication factor used for continuous left/right movement.
  `void`
  `setOrbitHeadingNegative(boolean o)`
  Tell the camera to start/stop orbiting (for heading) in a negative direction.
  `void`
  `setOrbitHeadingPositive(boolean o)`
  Tell the camera to start/stop orbiting (for heading) in a positive direction.
  `void`
  `setOrbitInclineNegative(boolean o)`
  Tell the camera to start/stop orbiting (for incline) in a negative direction.
  `void`
  `setOrbitInclinePositive(boolean o)`
  Tell the camera to start/stop orbiting (for incline) in a positive direction.
  `void`
  `setTargetMovingBackwardCursor(boolean in_backward)`
  Tell the camera target to start/stop moving backward.
  `void`
  `setTargetMovingBackwardKey(boolean in_backward)`
  Tell the camera target to start/stop moving backward.
  `void`
  `setTargetMovingContinuousForward(double f)`
  Set the amount of continuous forward movement.
  `void`
  `setTargetMovingContinuousRight(double f)`
  Set the amount of continuous rightward movement.
  `void`
  `setTargetMovingDown(boolean in_down)`
  Tell the camera target to start/stop moving down.
  `void`
  `setTargetMovingForwardCursor(boolean in_forward)`
  Tell the camera target to start/stop moving forward.
  `void`
  `setTargetMovingForwardKey(boolean in_forward)`
  Tell the camera target to start/stop moving forward.
  `void`
  `setTargetMovingLeftCursor(boolean in_left)`
  Tell the camera target to start/stop moving left.
  `void`
  `setTargetMovingLeftKey(boolean in_left)`
  Tell the camera target to start/stop moving left.
  `void`
  `setTargetMovingRightCursor(boolean in_right)`
  Tell the camera target to start/stop moving right.
  `void`
  `setTargetMovingRightKey(boolean in_right)`
  Tell the camera target to start/stop moving right.
  `void`
  `setTargetMovingUp(boolean in_up)`
  Tell the camera target to start/stop moving up.
  `void`
  `setZoomingIn(boolean in_zoom_in)`
  Tell the camera target to start/stop zooming in.
  `void`
  `setZoomingOut(boolean in_zoom_out)`
  Tell the camera target to start/stop zooming out.
  `double`
  `takeTargetMovingForward()`
  Retrieve `r` = `getTargetMovingForwardContinuous()`, set the current forward movement to 0.0, and return `r`.
  `double`
  `takeTargetMovingRight()`
  Retrieve `r` = `getTargetMovingRight()`, set the current rightward movement to 0.0, and return `r`.

- ## Method Details

  - ### addTargetMovingContinuousForward

    void addTargetMovingContinuousForward(double in_forward)
    Add a movement forward to the target position. A negative value decreases the amount of movement forward and increases the amount of movement backward.
    Parameters:
      `in_forward` - The amount to move forward

  - ### addTargetMovingContinuousRight

    void addTargetMovingContinuousRight(double in_right)
    Add a movement right to the target position. A negative value decreases the amount of movement to the right and increases the amount of movement to the left.
    Parameters:
      `in_right` - The amount to move right

  - ### getForwardFactor

    double getForwardFactor()
    Returns:
      The multiplication factor used for continuous forward/backward movement.

  - ### getRightFactor

    double getRightFactor()
    Returns:
      The multiplication factor used for continuous right/left movement.

  - ### getTargetMovingForwardContinuous

    double getTargetMovingForwardContinuous()
    Returns:
      The current forward movement.

  - ### getTargetMovingRight

    double getTargetMovingRight()
    Returns:
      The current rightward movement.

  - ### isOrbitingHeadingNegative

    boolean isOrbitingHeadingNegative()
    Returns:
      `true` if the user is telling the camera to orbit

  - ### isOrbitingHeadingPositive

    boolean isOrbitingHeadingPositive()
    Returns:
      `true` if the user is telling the camera to orbit

  - ### isOrbitingInclineNegative

    boolean isOrbitingInclineNegative()
    Returns:
      `true` if the user is telling the camera to orbit

  - ### isOrbitingInclinePositive

    boolean isOrbitingInclinePositive()
    Returns:
      `true` if the user is telling the camera to orbit

  - ### isTargetMovingBackward

    boolean isTargetMovingBackward()
    Returns:
      `true` if the user is telling the camera target to move backward

  - ### isTargetMovingDown

    boolean isTargetMovingDown()
    Returns:
      `true` if the user is telling the camera target to move down

  - ### setTargetMovingDown

    void setTargetMovingDown(boolean in_down)
    Tell the camera target to start/stop moving down.
    Parameters:
      `in_down` - `true` if the camera should be moving

  - ### isTargetMovingForward

    boolean isTargetMovingForward()
    Returns:
      `true` if the user is telling the camera target to move forward

  - ### isTargetMovingLeft

    boolean isTargetMovingLeft()
    Returns:
      `true` if the user is telling the camera target to move left

  - ### isTargetMovingRight

    boolean isTargetMovingRight()
    Returns:
      `true` if the user is telling the camera target to move right

  - ### isTargetMovingUp

    boolean isTargetMovingUp()
    Returns:
      `true` if the user is telling the camera target to move up

  - ### setTargetMovingUp

    void setTargetMovingUp(boolean in_up)
    Tell the camera target to start/stop moving up.
    Parameters:
      `in_up` - `true` if the camera should be moving

  - ### isZoomingIn

    boolean isZoomingIn()
    Returns:
      `true` if the user is telling the camera to zoom in

  - ### setZoomingIn

    void setZoomingIn(boolean in_zoom_in)
    Tell the camera target to start/stop zooming in.
    Parameters:
      `in_zoom_in` - `true` if the camera should be moving

  - ### isZoomingOut

    boolean isZoomingOut()
    Returns:
      `true` if the user is telling the camera to zoom out

  - ### setZoomingOut

    void setZoomingOut(boolean in_zoom_out)
    Tell the camera target to start/stop zooming out.
    Parameters:
      `in_zoom_out` - `true` if the camera should be moving

  - ### setContinuousForwardFactor

    void setContinuousForwardFactor(double f)
    Set the multiplication factor used for continuous forward/backward movement.
    Parameters:
      `f` - The multiplication factor

  - ### setContinuousRightwardFactor

    void setContinuousRightwardFactor(double f)
    Set the multiplication factor used for continuous left/right movement.
    Parameters:
      `f` - The multiplication factor

  - ### setOrbitHeadingNegative

    void setOrbitHeadingNegative(boolean o)
    Tell the camera to start/stop orbiting (for heading) in a negative direction.
    Parameters:
      `o` - `true` if the camera should be moving

  - ### setOrbitHeadingPositive

    void setOrbitHeadingPositive(boolean o)
    Tell the camera to start/stop orbiting (for heading) in a positive direction.
    Parameters:
      `o` - `true` if the camera should be moving

  - ### setOrbitInclineNegative

    void setOrbitInclineNegative(boolean o)
    Tell the camera to start/stop orbiting (for incline) in a negative direction.
    Parameters:
      `o` - `true` if the camera should be moving

  - ### setOrbitInclinePositive

    void setOrbitInclinePositive(boolean o)
    Tell the camera to start/stop orbiting (for incline) in a positive direction.
    Parameters:
      `o` - `true` if the camera should be moving

  - ### setTargetMovingBackwardCursor

    void setTargetMovingBackwardCursor(boolean in_backward)
    Tell the camera target to start/stop moving backward.
    Parameters:
      `in_backward` - `true` if the camera should be moving

  - ### setTargetMovingBackwardKey

    void setTargetMovingBackwardKey(boolean in_backward)
    Tell the camera target to start/stop moving backward.
    Parameters:
      `in_backward` - `true` if the camera should be moving

  - ### setTargetMovingContinuousForward

    void setTargetMovingContinuousForward(double f)
    Set the amount of continuous forward movement.
    Parameters:
      `f` - The forward movement

  - ### setTargetMovingContinuousRight

    void setTargetMovingContinuousRight(double f)
    Set the amount of continuous rightward movement.
    Parameters:
      `f` - The rightward movement

  - ### setTargetMovingForwardCursor

    void setTargetMovingForwardCursor(boolean in_forward)
    Tell the camera target to start/stop moving forward.
    Parameters:
      `in_forward` - `true` if the camera should be moving

  - ### setTargetMovingForwardKey

    void setTargetMovingForwardKey(boolean in_forward)
    Tell the camera target to start/stop moving forward.
    Parameters:
      `in_forward` - `true` if the camera should be moving

  - ### setTargetMovingLeftCursor

    void setTargetMovingLeftCursor(boolean in_left)
    Tell the camera target to start/stop moving left.
    Parameters:
      `in_left` - `true` if the camera should be moving

  - ### setTargetMovingLeftKey

    void setTargetMovingLeftKey(boolean in_left)
    Tell the camera target to start/stop moving left.
    Parameters:
      `in_left` - `true` if the camera should be moving

  - ### setTargetMovingRightCursor

    void setTargetMovingRightCursor(boolean in_right)
    Tell the camera target to start/stop moving right.
    Parameters:
      `in_right` - `true` if the camera should be moving

  - ### setTargetMovingRightKey

    void setTargetMovingRightKey(boolean in_right)
    Tell the camera target to start/stop moving right.
    Parameters:
      `in_right` - `true` if the camera should be moving

  - ### takeTargetMovingForward

    double takeTargetMovingForward()
    Retrieve `r` = `getTargetMovingForwardContinuous()`, set the current forward movement to 0.0, and return `r`.
    Returns:
      The amount of forward movement.

  - ### takeTargetMovingRight

    double takeTargetMovingRight()
    Retrieve `r` = `getTargetMovingRight()`, set the current rightward movement to 0.0, and return `r`.
    Returns:
      The amount of rightward movement.