Package org.robwork.sdurw_trajectory
Class TrajectoryQ
- java.lang.Object
-
- org.robwork.sdurw_trajectory.TrajectoryQ
-
- Direct Known Subclasses:
InterpolatorTrajectoryQ
,TrajectorySequenceQ
public class TrajectoryQ extends java.lang.Object
Interface for Trajectories in RobWork
-
-
Constructor Summary
Constructors Constructor Description TrajectoryQ(long cPtr, boolean cMemoryOwn)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description Q
ddx(double t)
Acceleration of trajectory at time t
Returns the acceleration of the trajectory at time t \in[startTime(), endTime()].
void
delete()
double
duration()
Total duration of the trajectory.
The duration of the Trajectory corresponds to the time it takes to
run through it.
If the trajectory is empty, then -1 is returned.Q
dx(double t)
Velocity of trajectory at time t
Returns the velocity of the trajectory at time t \in[startTime(), endTime()].
double
endTime()
Returns the endTime of the trajectory.
The end time equals startTime() + duration().
static long
getCPtr(TrajectoryQ obj)
TrajectoryIteratorQPtr
getIterator()
Returns a bi-directional interator for running through the trajectory.
For some trajectory types it may be significantly more efficient to run through
using an iterator, rather than using random access.
Pointer to the iterator.TrajectoryIteratorQPtr
getIterator(double dt)
Returns a bi-directional interator for running through the trajectory.
For some trajectory types it may be significantly more efficient to run through
using an iterator, rather than using random access.
VectorQ
getPath(double dt)
Constructs a discrete path based on the trajectory.
If uniform = true the path will be divided into the smallest number of
uniform steps for which the time stepsize <= dt.
If uniform = false the path is divided into steps of duration dt, except the
last interval which may be shorter to include the end point.
VectorQ
getPath(double dt, boolean uniform)
Constructs a discrete path based on the trajectory.
If uniform = true the path will be divided into the smallest number of
uniform steps for which the time stepsize <= dt.
If uniform = false the path is divided into steps of duration dt, except the
last interval which may be shorter to include the end point.
double
startTime()
Returns the startTime of the trajectory
Q
x(double t)
Position of trajectory at time t
Returns the position of the trajectory at time t \in[startTime(), endTime()].
-
-
-
Method Detail
-
getCPtr
public static long getCPtr(TrajectoryQ obj)
-
delete
public void delete()
-
x
public Q x(double t)
Position of trajectory at time t
Returns the position of the trajectory at time t \in[startTime(), endTime()].
- Parameters:
t
- [in] time between startTime() and endTime()- Returns:
- Position
-
dx
public Q dx(double t)
Velocity of trajectory at time t
Returns the velocity of the trajectory at time t \in[startTime(), endTime()].
- Parameters:
t
- [in] time between startTime() and endTime()- Returns:
- Velocity
-
ddx
public Q ddx(double t)
Acceleration of trajectory at time t
Returns the acceleration of the trajectory at time t \in[startTime(), endTime()].
- Parameters:
t
- [in] time between startTime() and endTime()- Returns:
- Acceleration
-
duration
public double duration()
Total duration of the trajectory.
The duration of the Trajectory corresponds to the time it takes to
run through it.
If the trajectory is empty, then -1 is returned.
-
startTime
public double startTime()
Returns the startTime of the trajectory
- Returns:
- Start time
-
endTime
public double endTime()
Returns the endTime of the trajectory.
The end time equals startTime() + duration().
- Returns:
- The end time
-
getPath
public VectorQ getPath(double dt, boolean uniform)
Constructs a discrete path based on the trajectory.
If uniform = true the path will be divided into the smallest number of
uniform steps for which the time stepsize <= dt.
If uniform = false the path is divided into steps of duration dt, except the
last interval which may be shorter to include the end point.
- Parameters:
dt
- [in] Step sizeuniform
- [in] Whether to sample the path uniformly- Returns:
- The discrete path.
-
getPath
public VectorQ getPath(double dt)
Constructs a discrete path based on the trajectory.
If uniform = true the path will be divided into the smallest number of
uniform steps for which the time stepsize <= dt.
If uniform = false the path is divided into steps of duration dt, except the
last interval which may be shorter to include the end point.
- Parameters:
dt
- [in] Step size
- Returns:
- The discrete path.
-
getIterator
public TrajectoryIteratorQPtr getIterator(double dt)
Returns a bi-directional interator for running through the trajectory.
For some trajectory types it may be significantly more efficient to run through
using an iterator, rather than using random access.
- Parameters:
dt
- [in] The default time step used when using the ++ or -- operators in the
iterator
Pointer to the iterator. The pointer has ownership.
-
getIterator
public TrajectoryIteratorQPtr getIterator()
Returns a bi-directional interator for running through the trajectory.
For some trajectory types it may be significantly more efficient to run through
using an iterator, rather than using random access.
Pointer to the iterator. The pointer has ownership.
-
-