Loading...
Searching...
No Matches
KleinBottleStateSpace.cpp
68 // See also: https://mathematica.stackexchange.com/questions/148693/generating-random-points-on-a-kleins-bottle
89 const double aprime = (64.0 * su8 - 128.0 * su6 + 60.0 * su4 + 0.4 * su * cv - (1.0 / 6.0) * cu * cv -
95 ((26 + 2.0 / 3.0) * su7 * cv - 55.0 * su5 * cv - (37 + 1.0 / 3.0) * su3 * cu6 * cv + 28.0 * su3 * cv +
99 const double cprime = ((5 + 1.0 / 3.0) * su5 * cu + 3.2 * su4 - (10 + 2.0 / 3.0) * su3 * cu - 6.4 * su2 +
128void KleinBottleStateSampler::sampleUniformNear(State *state, const State *near, double distance)
216void KleinBottleStateSpace::interpolate(const State *from, const State *to, double t, State *state) const
330 double b = 3 * cv - 3 * cu2 * cv - 48 * cu4 * cv + 48 * cu6 * cv - 60 * su + 5 * cu * cv * su - 5 * cu3 * cv * su -
ompl::base::CompoundState StateType
Define the type of state allocated by this state space.
Definition StateSpace.h:577
void allocStateComponents(CompoundState *state) const
Allocate the state components. Called by allocState(). Usually called by derived state spaces.
Definition StateSpace.cpp:1147
void addSubspace(const StateSpacePtr &component, double weight)
Adds a new state space as part of the compound state space. For computing distances within the compou...
Definition StateSpace.cpp:871
double distance(const State *state1, const State *state2) const override
Computes distance between two states. This function satisfies the properties of a metric if isMetricS...
Definition StateSpace.cpp:1068
void lock()
Lock this state space. This means no further spaces can be added as components. This function can be ...
Definition StateSpace.cpp:1163
void interpolate(const State *from, const State *to, double t, State *state) const override
Computes the state that lies at time t in [0, 1] on the segment that connects from state to to state....
Definition StateSpace.cpp:1109
void sampleUniformNear(State *state, const State *near, double distance) override
Sample a state near another, within a neighborhood controlled by a distance parameter.
Definition KleinBottleStateSpace.cpp:128
void sampleGaussian(State *state, const State *mean, double stdDev) override
Sample a state using a Gaussian distribution with given mean and standard deviation (stdDev).
Definition KleinBottleStateSpace.cpp:137
The definition of a state (u,v) in the Klein bottle state space. A state is represented as a cylinder...
Definition KleinBottleStateSpace.h:83
State * allocState() const override
Allocate a state that can store a point in the described space.
Definition KleinBottleStateSpace.cpp:295
void interpolate(const State *from, const State *to, double t, State *state) const override
Computes the state that lies at time t in [0, 1] on the segment that connects from state to to state....
Definition KleinBottleStateSpace.cpp:216
double distance(const State *state1, const State *state2) const override
Computes distance between two states. This function satisfies the properties of a metric if isMetricS...
Definition KleinBottleStateSpace.cpp:186
StateSamplerPtr allocDefaultStateSampler() const override
Allocate an instance of the default uniform state sampler for this space.
Definition KleinBottleStateSpace.cpp:181
A state space representing Rn. The distance function is the L2 norm.
Definition RealVectorStateSpace.h:74
A shared pointer wrapper for ompl::base::StateSampler.
A shared pointer wrapper for ompl::base::StateSpace.
Representation of a space in which planning can be performed. Topology specific sampling,...
Definition StateSpace.h:71
This namespace contains sampling based planning routines shared by both planning under geometric cons...
Definition ConstrainedSpaceInformation.h:55