MotionState
constructor(position: Measure<U>, velocity: Per<U, TimeUnit> = position.unit.per(Seconds).of(0.0), acceleration: Per<PerUnit<U, TimeUnit>, TimeUnit> = position.unit.per(
Seconds,
).per(Seconds).of(0.0))(source)
Type Parameters
U
The position unit type (e.g., dev.nextftc.units.unittypes.DistanceUnit for linear motion, dev.nextftc.units.unittypes.AngleUnit for angular motion)
constructor(unit: U, position: Double = 0.0, velocity: Double = 0.0, acceleration: Double = 0.0)(source)
Convenience constructor that accepts raw numeric magnitudes and a unit, converting them into strongly-typed Measure and Per values used by this class.
All three numeric parameters default to 0.0.
Example:
// Create a linear MotionState with position in inches, velocity in inches/sec,
// and acceleration in inches/sec^2
val s = MotionState(Inches, 12.0, 3.0, 0.5)Content copied to clipboard
Parameters
unit
the position unit (used to construct typed measures)
position
position magnitude in unit
velocity
velocity magnitude in unit / second (interpreted as unit.per(Seconds))
acceleration
acceleration magnitude in unit / second^2 (interpreted as unit.per(Seconds).per(Seconds))