KrisLibrary  1.0.0
Public Member Functions | List of all members
SpaceTimeCSpace Class Reference

A cspace that prepends a time variable to the given CSpace. This is best used with perturbation-sampling planners, and/or SpaceTimeIntegratedKinodynamicCSpace. More...

#include <TimeCSpace.h>

Inheritance diagram for SpaceTimeCSpace:
MultiCSpace GeodesicCSpace CSpace GeodesicSpace

Public Member Functions

 SpaceTimeCSpace (const std::shared_ptr< CSpace > &stateSpace, Real tmax=Inf)
 
void SetTimeMetricWeight (Real weight)
 
virtual void Sample (Config &x)
 
virtual void SampleNeighborhood (const Config &c, Real r, Config &x)
 
virtual EdgePlannerPtr LocalPlanner (const Config &a, const Config &b)
 
virtual EdgePlannerPtr PathChecker (const Config &a, const Config &b)
 
- Public Member Functions inherited from MultiCSpace
 MultiCSpace (const std::shared_ptr< CSpace > &space1, const std::shared_ptr< CSpace > &space2)
 
 MultiCSpace (const std::vector< std::shared_ptr< CSpace > > &components)
 
void Add (const std::string &name, const std::shared_ptr< CSpace > &space, Real distanceWeight=1)
 
void FlattenConstraints ()
 
void AddConstraint (int spaceIndex, const std::string &name, CSet *constraint)
 Works once CSpaces are flattened.
 
void AddConstraint (int spaceIndex, const std::string &name, const std::shared_ptr< CSet > &constraint)
 Works once CSpaces are flattened.
 
void AddConstraint (int spaceIndex, const std::string &name, CSet::CPredicate test)
 Works once CSpaces are flattened.
 
void Split (const Vector &x, std::vector< Vector > &items)
 
void SplitRef (const Vector &x, std::vector< Vector > &items)
 
void Join (const std::vector< Vector > &items, Vector &x)
 
virtual int NumDimensions ()
 
virtual int NumIntrinsicDimensions ()
 
virtual std::string VariableName (int i)
 
virtual int NumConstraints ()
 
virtual std::string ConstraintName (int i)
 
virtual std::shared_ptr< CSetConstraint (int i)
 
virtual bool IsFeasible (const Config &)
 
virtual bool ProjectFeasible (Config &x)
 
virtual Optimization::NonlinearProgramFeasibleNumeric ()
 If possible, give the feasible set as a nonlinear program.
 
virtual EdgePlannerPtr PathChecker (const Config &a, const Config &b, int constraint)
 
virtual Real Distance (const Config &x, const Config &y)
 optionally overrideable (default uses euclidean space)
 
virtual void Interpolate (const Config &x, const Config &y, Real u, Config &out)
 
virtual void Midpoint (const Config &x, const Config &y, Config &out)
 
virtual Real ObstacleDistance (const Config &a)
 for local planners using obstacle distance
 
virtual void Properties (PropertyMap &)
 Returns properties of the space that might be useful for planners. More...
 
virtual void InterpolateDeriv (const Config &a, const Config &b, Real u, Vector &dx)
 
virtual void InterpolateDerivA (const Config &a, const Config &b, Real u, const Vector &da, Vector &dx)
 
virtual void InterpolateDerivB (const Config &a, const Config &b, Real u, const Vector &db, Vector &dx)
 
virtual void InterpolateDeriv2 (const Config &a, const Config &b, Real u, Vector &ddx)
 
virtual void Integrate (const Config &a, const Vector &da, Config &b)
 
- Public Member Functions inherited from CSpace
void AddConstraint (const std::string &name, CSet *constraint)
 
void AddConstraint (const std::string &name, const std::shared_ptr< CSet > &constraint)
 
void AddConstraint (const std::string &name, CSet::CPredicate test)
 
void CopyConstraints (const CSpace *space, const std::string &prefix="")
 
virtual bool IsFeasible (const Config &, int constraint)
 
virtual void CheckConstraints (const Config &, std::vector< bool > &satisfied)
 Returns a vector indicating which constraints are satisfied.
 
void GetFeasibleNames (const Config &q, std::vector< std::string > &names)
 Gets a list of feasible obstacles for the given configuration.
 
void GetInfeasibleNames (const Config &q, std::vector< std::string > &names)
 Gets a list of infeasible obstacles for the given configuration.
 
void PrintInfeasibleNames (const Config &q, std::ostream &out=std::cout, const char *prefix="", const char *suffix="\n")
 Prints out the list of infeasible obstacles for the given configuration.
 

Additional Inherited Members

- Public Attributes inherited from MultiCSpace
std::vector< std::shared_ptr< CSpace > > components
 
std::vector< std::string > componentNames
 
std::vector< Real > distanceWeights
 
- Public Attributes inherited from CSpace
std::vector< std::string > constraintNames
 
std::vector< std::shared_ptr< CSet > > constraints
 

Detailed Description

A cspace that prepends a time variable to the given CSpace. This is best used with perturbation-sampling planners, and/or SpaceTimeIntegratedKinodynamicCSpace.


The documentation for this class was generated from the following files: