Class 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 null
      boolean isShared()
      check if this Ptr has shared ownership or none
      ownership
      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()].

      • Methods inherited from class java.lang.Object

        equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • 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

      • 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.
      • 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
      • 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 size
        uniform - [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.