Package org.robwork.sdurw_trajectory
Class TrajectoryQPtr
- java.lang.Object
-
- org.robwork.sdurw_trajectory.TrajectoryQPtr
-
public class TrajectoryQPtr extends java.lang.Object
Ptr stores a pointer and optionally takes ownership of the value.
-
-
Constructor Summary
Constructors Constructor Description TrajectoryQPtr()
Default constructor yielding a NULL-pointer.TrajectoryQPtr(long cPtr, boolean cMemoryOwn)
TrajectoryQPtr(TrajectoryQ ptr)
Do not take ownership of ptr.
ptr can be null.
The constructor is implicit on purpose.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description TrajectoryQ
__ref__()
Dereferencing operator.TrajectoryQCPtr
cptr()
Q
ddx(double t)
Acceleration of trajectory at time t
Returns the acceleration of the trajectory at time t \in[startTime(), endTime()].
void
delete()
TrajectoryQ
deref()
The pointer stored in the object.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().
boolean
equals(TrajectoryQ p)
static long
getCPtr(TrajectoryQPtr obj)
TrajectoryQ
getDeref()
Member access operator.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.
boolean
isNull()
checks if the pointer is nullboolean
isShared()
check if this Ptr has shared ownership or none
ownershipdouble
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()].
-
-
-
Constructor Detail
-
TrajectoryQPtr
public TrajectoryQPtr(long cPtr, boolean cMemoryOwn)
-
TrajectoryQPtr
public TrajectoryQPtr()
Default constructor yielding a NULL-pointer.
-
TrajectoryQPtr
public TrajectoryQPtr(TrajectoryQ ptr)
Do not take ownership of ptr.
ptr can be null.
The constructor is implicit on purpose.
-
-
Method Detail
-
getCPtr
public static long getCPtr(TrajectoryQPtr obj)
-
delete
public void delete()
-
deref
public TrajectoryQ deref()
The pointer stored in the object.
-
__ref__
public TrajectoryQ __ref__()
Dereferencing operator.
-
getDeref
public TrajectoryQ getDeref()
Member access operator.
-
equals
public boolean equals(TrajectoryQ p)
-
isShared
public boolean isShared()
check if this Ptr has shared ownership or none
ownership- Returns:
- true if Ptr has shared ownership, false if it has no ownership.
-
isNull
public boolean isNull()
checks if the pointer is null- Returns:
- Returns true if the pointer is null
-
cptr
public TrajectoryQCPtr cptr()
-
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.
-
-