Public Types | |
enum | ExternalizationType { Input = 1, Output = 2, IO = 3 } |
Public Member Functions | |
Trajectory () | |
default trajectory - all points & times range over [0..1] secs. | |
Trajectory (const Trajectory &t) | |
copy trajectory t | |
Trajectory (const Path &p, Int samples=100) | |
Trajectory (const Point3 &sp, const Orient &so, const Time &st, const Point3 &ep, const Orient &eo, const Time &et) | |
simple line segment start[position|orientation|time] - end[position|orientation|time] | |
Trajectory (const array< Point3 > &points, const array< Orient > &orients=array< Orient >(), const array< Time > ×=array< Time >(), bool deltas=false) | |
Trajectory (const array< Vector > &points, bool deltas=false) | |
Trajectory (const ExpressionVector &p) | |
arbitrary path defined by symbolic expressions for x,y,z,qx,qy,qz,qw,t in terms of s | |
virtual String | className () const |
Point3 | position (const Time &t) const |
get cartesian position at time t | |
Orient | orientation (const Time &t) const |
get orientation at time t | |
Time | time (Real s) const |
get time at s:[0..1] | |
void | resample (Int samples=100) |
discard distinguished points and replace them by 'samples' distingushed points over s=[0..1] | |
void | resample (const Real dxmax) |
add distinguished points as necessary to ensure that distance between the positions of any pair of distinguished points is <= dxmax | |
void | shiftTime (const Time &dt) |
shift time by dt | |
void | scaleTime (Real s) |
scale time by s | |
Path | toPath () const |
convert to a Path by discarding time information | |
virtual void | serialize (Serializer &s) |
read or write object state to Serializer | |
virtual bool | formatSupported (String format, Real version=1.0, ExternalizationType type=IO) const |
query if specific format is supported (for input, output or both) | |
virtual void | externalize (Externalizer &e, String format="", Real version=1.0) |
read or write object state to Externalizer | |
Point3 | position (Real s) const |
get cartesian position at s:[0..1] | |
Orient | orientation (Real s) const |
get orientation at s:[0..1] | |
const String & | getCoordFrame () const |
void | setCoordFrame (const String &coordFrame) |
set application defined coordinate frame specifier. | |
const String & | getUnits () const |
void | setUnits (const String &unitSpecifier) |
set application defined unit specifier. | |
Real | distinguishedValue (Int i) const |
Int | numDistinguishedValues () const |
< number of distinguished s values | |
void | translate (const Vector3 &t) |
translate the path position by t | |
void | rotate (const Quat4 &r) |
rotate the path orientation by r | |
void | transform (const Matrix4 &m) |
transform the path by m | |
void | scalePosition (Real s) |
scale position coords. by s | |
virtual void | externalize (Externalizer &e, String format="", Real version=1.0) const |
write object state to Externalizer (throws if e is in Input) | |
virtual bool | isSameKindAs (const Object &) const |
void | load (ref< VFile > archive, const String &format="", Real version=1.0) |
void | save (ref< VFile > archive, const String &format="", Real version=1.0) |
Static Public Member Functions | |
template<class BaseClass, class DerivedClass> void | registerSerializableInstantiator (const SerializableInstantiator &instantiator) |
void | registerSerializableInstantiator (const String &baseClassTypeName, const String &derivedClassTypeName, const SerializableInstantiator &instantiator) |
template<class BaseClass> const SerializableInstantiator & | getSerializableInstantiator (const String &derivedClassTypeName) |
const SerializableInstantiator & | getSerializableInstantiator (const String &baseClassTypeName, const String &derivedClassTypeName) |
Protected Member Functions | |
virtual void | create () |
virtual void | create (const Trajectory &t) |
virtual void | create (const Point3 &sp, const Orient &so, const Point3 &ep, const Orient &eo) |
virtual void | create (const Point3 &sp, const Orient &so, const Time &st, const Point3 &ep, const Orient &eo, const Time &et) |
virtual void | create (const array< Point3 > &points, const array< Orient > &orients, bool deltas) |
virtual void | create (const array< Point3 > &points, const array< Orient > &orients, const array< Time > ×, bool deltas) |
virtual void | create (const array< Vector > &points, bool deltas) |
virtual void | create (const ExpressionVector &p) |
void | init (const array< Point3 > &points, const array< Orient > &orients, const array< Time > ×, bool deltas) |
virtual void | create (const Path &p) |
void | init (const array< Point3 > &points, const array< Orient > &orients, bool deltas) |
Protected Attributes | |
ref< TrajectoryTimeRep > | trep |
representation | |
Serializable::SerializableDerivedInstantiator< LineSegTrajectoryRep > | lineSegTrajectoryRepInstantiator |
Serializable::SerializableDerivedInstantiator< WaypointTrajectoryRep > | waypointTrajectoryRepInstantiator |
Serializable::SerializableDerivedInstantiator< ParametricTrajectoryRep > | parametricTrajectoryRepInstantiator |
ref< PathRep > | rep |
representation | |
String | frame |
application defined coord. frame specifier | |
String | units |
application defined unit specifier | |
Serializable::SerializableDerivedInstantiator< LineSegPathRep > | lineSegPathRepInstantiator |
Serializable::SerializableDerivedInstantiator< WaypointPathRep > | waypointPathRepInstantiator |
Friends | |
class | Trajectory |
Definition at line 50 of file Trajectory.
|
Definition at line 40 of file Externalizable. |
|
default trajectory - all points & times range over [0..1] secs.
|
|
copy trajectory t
|
|
copy Path p (times will be in range [0..1] secs) If p has >2 distinguished points, then the trajectory is created by sampling the path at those points, otherwise it is created by dividing the range s:[0..1] into the no. of |
|
simple line segment start[position|orientation|time] - end[position|orientation|time]
|
|
a set of 'waypoints' - actually points and their corresponding orientations & times. if deltas is true, the arrays are considered to specify the inter-waypoint deltas instead (with the first point/orient being 0) |
|
a set of 'waypoints'. If vector dim is 4, specifies position & time only; dim 7, specifies position and orientation using the EulerRPY (roll, pitch, yaw) convention & time; dim 8 specifies position and orientation as a quaternion qx,qy,qz,qw & time (secs). if deltas is true, the array is considered to specify the inter-waypoint deltas instead (with the first point/orient/time being 0) |
|
arbitrary path defined by symbolic expressions for x,y,z,qx,qy,qz,qw,t in terms of s
|
|
return the name of the object's class type. Must be defined by derived classes. Reimplemented from base::Path. Definition at line 85 of file Trajectory. References base::String. |
|
|
|
Reimplemented from base::Path. |
|
Reimplemented from base::Path. |
|
|
|
Reimplemented from base::Path. |
|
|
|
Reimplemented from base::Path. |
|
|
|
Reimplemented from base::Path. |
|
some values of s may correspond to distinguished points along a path. the values s=0 and s=1 are always distinguished values. For example, if the path was specified using waypoints, then there will be a distinguished value of s for each waypoint. 0 <= i < numDistinguishedValues() Definition at line 114 of file Path. References base::Int, and base::Real. |
|
|
read or write object state to Externalizer
Reimplemented from base::Path. |
|
query if specific format is supported (for input, output or both)
Reimplemented from base::Path. |
|
get application defined coordinate frame specifier. Some means of creating a Path provide a coordinate frame specifier. e.g. xml externalization this returns that string (or whatever was set via setCoordFrame() - defaults to the empty String) Definition at line 95 of file Path. References base::Path::frame, and base::String. |
|
|
|
Definition at line 71 of file Serializable. References base::String. |
|
get application defined unit specifier. Some means of creating a Path provide unit specifier. e.g. xml externalization this returns that string (or whatever was set via setUnits() - defaults to the empty String) Definition at line 104 of file Path. References base::String, and base::Path::units. |
|
|
|
|
|
|
|
|
|
< number of distinguished s values
Definition at line 116 of file Path. References base::Int. |
|
get orientation at s:[0..1]
Definition at line 84 of file Path. References base::Real. |
|
get orientation at time t
Definition at line 91 of file Trajectory. References trep. |
|
get cartesian position at s:[0..1]
Definition at line 81 of file Path. References base::Point3, and base::Real. |
|
get cartesian position at time t
Definition at line 88 of file Trajectory. References base::Point3, and trep. |
|
|
|
Definition at line 62 of file Serializable. |
|
add distinguished points as necessary to ensure that distance between the positions of any pair of distinguished points is <= dxmax
Reimplemented from base::Path. |
|
discard distinguished points and replace them by 'samples' distingushed points over s=[0..1]
Reimplemented from base::Path. |
|
rotate the path orientation by r
|
|
|
|
scale position coords. by s
Definition at line 129 of file Path. References base::Real. |
|
scale time by s
Definition at line 106 of file Trajectory. References base::Real, and trep. |
|
read or write object state to Serializer
Reimplemented from base::Path. |
|
set application defined coordinate frame specifier.
Definition at line 98 of file Path. References base::Path::frame, and base::String. |
|
set application defined unit specifier.
Definition at line 107 of file Path. References base::String, and base::Path::units. |
|
shift time by dt
Definition at line 103 of file Trajectory. References trep. |
|
get time at s:[0..1]
Definition at line 94 of file Trajectory. References base::Real, and trep. |
|
convert to a Path by discarding time information
|
|
transform the path by m
|
|
translate the path position by t
|
|
|
|
application defined coord. frame specifier
Definition at line 147 of file Path. Referenced by base::Path::getCoordFrame(), and base::Path::setCoordFrame(). |
|
|
|
Definition at line 134 of file Trajectory. |
|
Definition at line 136 of file Trajectory. |
|
representation
|
|
representation
Definition at line 129 of file Trajectory. Referenced by orientation(), position(), scaleTime(), shiftTime(), and time(). |
|
application defined unit specifier
Definition at line 148 of file Path. Referenced by base::Path::getUnits(), and base::Path::setUnits(). |
|
|
|
Definition at line 135 of file Trajectory. |