Package com.io7m.jcamera
Class JCameraSphericalLinearIntegratorZoomScaled
java.lang.Object
com.io7m.jcamera.JCameraSphericalLinearIntegratorZoomScaled
- All Implemented Interfaces:
JCameraIntegratorType,JCameraSphericalLinearIntegratorType
@EqualityReference
public final class JCameraSphericalLinearIntegratorZoomScaled
extends Object
implements JCameraSphericalLinearIntegratorType
An implementation of
JCameraSphericalLinearIntegratorType that scales
movement on the horizontal plane by the current zoom.-
Method Summary
Modifier and TypeMethodDescriptionvoidintegrate(double t) Integrate the positions/velocities of the current camera overd.voidintegratorLinearTargetSetAcceleration(double a) Set the linear acceleration (of the camera target) toa.voidintegratorLinearTargetSetDrag(double f) Set the linear drag factor (of the camera target) tof.voidintegratorLinearTargetSetMaximumSpeed(double s) Set the maximum linear movement speed (of the camera target) tos.voidintegratorLinearZoomSetAcceleration(double a) Set the linear acceleration (of the camera zoom) toa.voidintegratorLinearZoomSetDrag(double f) Set the linear drag factor (of the camera zoom) tof.voidintegratorLinearZoomSetMaximumSpeed(double s) Set the maximum linear movement speed (of the camera zoom) tos.newIntegrator(JCameraSphericalType in_camera, JCameraSphericalInputType in_input) Construct a new integrator.newIntegratorWithFunctions(JCameraSphericalType in_camera, JCameraSphericalInput in_input, JCameraScalingFunctionType in_drag_scale, JCameraScalingFunctionType in_linear_scale) Construct a new integrator.
-
Method Details
-
newIntegrator
public static JCameraSphericalLinearIntegratorType newIntegrator(JCameraSphericalType in_camera, JCameraSphericalInputType 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
-
newIntegratorWithFunctions
public static JCameraSphericalLinearIntegratorType newIntegratorWithFunctions(JCameraSphericalType in_camera, JCameraSphericalInput in_input, JCameraScalingFunctionType in_drag_scale, JCameraScalingFunctionType in_linear_scale) Construct a new integrator.- Parameters:
in_camera- The camera to be integrated.in_input- The input to be sampled.in_drag_scale- The function used to produce a scaling factor for mouse dragging.in_linear_scale- The function used to produce a scaling factor for linear movement.- Returns:
- A new integrator
-
integrate
public void integrate(double t) Description copied from interface:JCameraIntegratorTypeIntegrate the positions/velocities of the current camera overd.- Specified by:
integratein interfaceJCameraIntegratorType- Parameters:
t- The delta time
-
integratorGetCamera
- Specified by:
integratorGetCamerain interfaceJCameraSphericalLinearIntegratorType- Returns:
- The camera that will be affected by the integrator
-
integratorGetInput
- Specified by:
integratorGetInputin interfaceJCameraSphericalLinearIntegratorType- Returns:
- The input used to drive the integrator.
-
integratorLinearTargetSetAcceleration
public void integratorLinearTargetSetAcceleration(double a) Description copied from interface:JCameraSphericalLinearIntegratorTypeSet the linear acceleration (of the camera target) toa.- Specified by:
integratorLinearTargetSetAccelerationin interfaceJCameraSphericalLinearIntegratorType- Parameters:
a- The linear acceleration.
-
integratorLinearTargetSetDrag
public void integratorLinearTargetSetDrag(double f) Description copied from interface:JCameraSphericalLinearIntegratorTypeSet the linear drag factor (of the camera target) tof.- Specified by:
integratorLinearTargetSetDragin interfaceJCameraSphericalLinearIntegratorType- Parameters:
f- The linear drag factor.
-
integratorLinearTargetSetMaximumSpeed
public void integratorLinearTargetSetMaximumSpeed(double s) Description copied from interface:JCameraSphericalLinearIntegratorTypeSet the maximum linear movement speed (of the camera target) tos.- Specified by:
integratorLinearTargetSetMaximumSpeedin interfaceJCameraSphericalLinearIntegratorType- Parameters:
s- The maximum linear speed.
-
integratorLinearZoomSetAcceleration
public void integratorLinearZoomSetAcceleration(double a) Description copied from interface:JCameraSphericalLinearIntegratorTypeSet the linear acceleration (of the camera zoom) toa.- Specified by:
integratorLinearZoomSetAccelerationin interfaceJCameraSphericalLinearIntegratorType- Parameters:
a- The linear acceleration.
-
integratorLinearZoomSetDrag
public void integratorLinearZoomSetDrag(double f) Description copied from interface:JCameraSphericalLinearIntegratorTypeSet the linear drag factor (of the camera zoom) tof.- Specified by:
integratorLinearZoomSetDragin interfaceJCameraSphericalLinearIntegratorType- Parameters:
f- The linear drag factor.
-
integratorLinearZoomSetMaximumSpeed
public void integratorLinearZoomSetMaximumSpeed(double s) Description copied from interface:JCameraSphericalLinearIntegratorTypeSet the maximum linear movement speed (of the camera zoom) tos.- Specified by:
integratorLinearZoomSetMaximumSpeedin interfaceJCameraSphericalLinearIntegratorType- Parameters:
s- The maximum linear speed.
-