wcs.h File Reference Detailed DescriptionInterface that unifies the access to world and cuiksystems so that the atlas related applications can operate on both structures. Definition in file wcs.h.
Macro Definition Documentation
Initializes the equations from a file.
Definition at line 89 of file wcs.h. Referenced by main().
Initializes the equations from a world structure. CAUTION: Do not use CS_WD_DELETE for structures created using this macro. The internal pointer to world in wcs copies the input pointer. Thus a delete would produce a double free.
Definition at line 108 of file wcs.h. Referenced by main().
Initializes the equations from a CuikSystem structure. CAUTION: Do not use CS_WD_DELETE for structures created using this macro. The internal pointer to CuikSystem wcs copies the input pointer. Thus a delete would produce a double free.
TRUE if the equations defining the implicit conf. space are given by a cuiksystem and FALSE if they are given by a world file (possibly involving obstacles,...)
Definition at line 139 of file wcs.h. Referenced by AtlasAStar().
Returns the world from an TAtlasBase.
Definition at line 150 of file wcs.h. Referenced by main().
Returns the CuikSystem from an TAtlasBase.
Evaluates the simplified set of equations.
Definition at line 176 of file wcs.h. Referenced by Chart2Manifold(), Newton2ManifoldPlane(), and RefineSingularPoint().
Evaluates a subset of the simplified set of equations.
Definition at line 192 of file wcs.h. Referenced by Chart2Manifold().
Determines if the set of inequalities in the simplified set of equations actually hold for a given point.
Definition at line 207 of file wcs.h. Referenced by AddBranchToRRT(), AtlasRRT(), AtlasRRTSample(), AtlasRRTstar(), AtlasTRRT(), cBiRRT(), ccRRT(), ccTRRT(), ConnectSamples(), ConnectSamplesChart(), ExtendAtlasFromPoint(), InitChartInt(), InitRRT(), NewChartFromPoint(), NewTemptativeSample(), RRTstar(), and RRTValidateSample().
Determines the maximum error in the inequalities in the simplified set of equations actually hold for a given point.
Definition at line 223 of file wcs.h. Referenced by CutPolytopeWithFace().
Gets an array of booleans with TRUE for the system variables.
Definition at line 238 of file wcs.h. Referenced by AtlasAStar(), AtlasGBF(), main(), MinimizeOnAtlas(), ReconstructAtlasRRTPath(), SaveChartCenters(), SaveRRTNodes(), SaveSingularCharts(), SmoothSamples(), Steps2PathinAtlasRRT(), and Steps2PathinRRT().
Gets an array with the topology flag for each variable in the original system.
Definition at line 263 of file wcs.h. Referenced by TriangulateAtlas().
Compleates a point of the original system of equations from the values of the variables in the simplified system.
Definition at line 279 of file wcs.h. Referenced by MinimizeOnAtlas(), PathInChart(), PlotAtlas(), PlotAtlasRRT(), PlotBifurcations(), PlotChart(), PlotChartAsBox(), PlotChartAsPolygon(), PlotConnection(), PlotQrand(), PlotRRT(), ReconstructAtlasPath(), ReconstructAtlasRRTPath(), SaveChartCenters(), SaveRRTNodes(), SaveSingularCharts(), SmoothSamples(), Steps2PathinAtlasRRT(), Steps2PathinRRT(), and TriangulateAtlas().
Initializes the collision detector. This only has effects if we are operating over world structures (the cuiksystem do not have obstacle information).
Definition at line 294 of file wcs.h. Referenced by GradientSmooth(), InitAtlas(), InitRRT(), RandomSmooth(), and ShortcutSmooth().
Value:
RegenerateWorldOriginalPoint(pr,s,&o,(wcs)->w);if ((sPrev!=NULL)&&(WorldContinuousCD((wcs)->w))) RegenerateWorldOriginalPoint(pr,sPrev,&oPrev,(wcs)->w); \
f=MoveAndCheckCD(pr,FALSE,0,o,oPrev,(wcs)->w); \
free(o);if (oPrev!=NULL) free(oPrev);} \
}
boolean WorldCanCollide(Tworld *w) Determines if any collision is potentially possible. Definition: world.c:1046 boolean MoveAndCheckCD(Tparameters *p, boolean all, unsigned int tID, double *sol, double *solPrev, Tworld *w) Checks a point for collision. Definition: world.c:1076 boolean WorldContinuousCD(Tworld *w) Determines the type of collision library used. Definition: world.c:1051 unsigned int RegenerateWorldOriginalPoint(Tparameters *p, double *s, double **o, Tworld *w) Reconstruct a point in original kinematic system from a simplified point. Definition: world.c:2166 Determines if a configuration given in the simplified form is in collision.
Definition at line 319 of file wcs.h. Referenced by AddBranchToRRT(), ChartVolume(), ConnectSamples(), ConnectSamplesChart(), DistanceOnChart(), ExtendAtlasFromPoint(), GeodesicDistance(), GradientSmooth(), InitChartInt(), InitRRT(), main(), and NewTemptativeSample().
Determines if a configuration given in the original form is in collision. This is typically used instead of CS_WD_IN_COLLISION when we already have the point in the original system (i.e., after using CS_WD_REGENERATE_ORIGINAL_POINT).
Definition at line 348 of file wcs.h. Referenced by AtlasAStar(), AtlasGBF(), AtlasRRT(), AtlasRRTstar(), AtlasTRRT(), cBiRRT(), ccRRT(), ccTRRT(), InitAtlasFromPoint(), PathInChart(), and RRTstar().
Returns the pointer to the base type. This is used as a parameter for the cost function.
Definition at line 359 of file wcs.h. Referenced by main().
Gives the cost function used to evaluate a given set of configurations.
Definition at line 369 of file wcs.h. Referenced by main().
Computes the cost of a given set of configurations. In the world files the cost is defined using the "avoid limit" clause. In the cuik files it can be defined as an arbitrary equation invoving the problem variables.
Definition at line 387 of file wcs.h. Referenced by main().
Gets an array with the topology flag for each variable in the simplified system.
Definition at line 401 of file wcs.h. Referenced by GradientSmooth(), main(), RandomSmooth(), SetAtlasTopology(), SetRRTTopology(), ShortcutSmooth(), and SmoothSamples().
Compleates a solution point including only values for the system variables with the values for the non-system (dummy) variables.
Definition at line 417 of file wcs.h. Referenced by AtlasAStar(), AtlasGBF(), AtlasRRT(), AtlasRRTstar(), AtlasTRRT(), cBiRRT(), ccRRT(), ccTRRT(), InitAtlasFromPoint(), InitRRT(), RRTstar(), and SmoothSamples().
Generates a point in the simplified system from a point in the original system.
Definition at line 432 of file wcs.h. Referenced by AtlasAStar(), AtlasGBF(), AtlasRRT(), AtlasRRTstar(), AtlasTRRT(), cBiRRT(), ccRRT(), ccTRRT(), InitAtlasFromPoint(), InitRRT(), RRTstar(), and SmoothSamples().
Computes the error in the simplified system for a given point.
Definition at line 446 of file wcs.h. Referenced by AtlasAStar(), AtlasGBF(), AtlasRRT(), AtlasRRTstar(), AtlasTRRT(), cBiRRT(), ccRRT(), ccTRRT(), InitChartInt(), InitRRT(), and RRTstar().
Computes a box with the valid range for the variables of the simplifed system.
Definition at line 460 of file wcs.h. Referenced by GradientSmooth(), InitAtlas(), InitAtlasRRT(), InitRRT(), LoadAtlas(), LoadAtlasRRT(), LoadRRT(), main(), RandomSmooth(), and ShortcutSmooth().
Computes the Jacobian of the simplified system.
Definition at line 474 of file wcs.h. Referenced by ConnectSamplesChart(), GradientSmooth(), InitAtlas(), InitAtlasRRT(), LoadAtlas(), LoadAtlasRRT(), and main().
Applies a Newton procedure to move a point towads the manifold defined by the equations.
Definition at line 488 of file wcs.h. Referenced by AddBranchToRRT(), ConnectSamples(), and GeodesicDistance().
Releases the memory used to store the equation structure.
Definition at line 500 of file wcs.h. Referenced by main(). Function Documentation
Initializes the equations from a file. First we try to read the equations from cuik file. If this fails, we try to read them from a world file. If not possible, we trigger and error. The cuik files are typically derived from the world ones (using cuikequations). So if the cuik file has been generated, then it probably means you want to work with it. Otherwise just delete (or rename) it and we will read the world file instead. We have two main set of equation. One (the original system) is the one as given in the given file. The other (the simplified system) is the same after introducing trivial simplifications (removing variables with constant values, replacing variables by equivalent ones,...). Typically we operate with the simplified system but input and output points are given in the original system. Therefore we have to translate between them when necessary. But this is out of the scope of this function.
Definition at line 618 of file chart.c. References CreateFileName(), TAtlasBase::cs, CUIK_EXT, DeleteFileName(), FALSE, GetFileFullName(), InitCuikSystemFromFile(), InitWorldFromFile(), TAtlasBase::isCS, NEW, TRUE, TAtlasBase::w, and WORLD_EXT. Referenced by main(). |
Follow us!