|
politopix
5.0.0
|
A linear (n-1) dimension space in. More...
#include <HalfSpace_Rn.h>


Public Member Functions | |
| Hyperplane_Rn (unsigned int n) | |
| Constructor for polytopes i.e. bounded convex polyhedra. More... | |
| virtual | ~Hyperplane_Rn () |
| Destructor. More... | |
| virtual void | dump (std::ostream &this_ostream) const |
| virtual bool | testEmptyness (const std::vector< boost::shared_ptr< Generator_Rn_SD > > &GN_IN, const std::vector< boost::shared_ptr< Generator_Rn_SD > > &GN_OUT, const std::vector< boost::shared_ptr< Generator_Rn_SD > > &GN_ON) |
| Specific to the double description algorithm Test whether an intersection with a hyperplane has generated an empty set or not. More... | |
| virtual bool | testEmptyness (unsigned int GN_IN, unsigned int GN_OUT, unsigned int GN_ON) |
| Specific to the double description algorithm Test whether an intersection with a hyperplane has generated an empty set or not. More... | |
| virtual void | noGeneratorsOUT (std::vector< boost::shared_ptr< Generator_Rn_SD > > &listOfGeneratorSD, const std::vector< boost::shared_ptr< Generator_Rn_SD > > &GN_ON) |
| Specific to the double description algorithm When chopping a polyhedral body with a hyperplane, if the set of generators OUT is empty, only keep the generators ON and ignore the generators IN. In the case of a half-space, keep things unchanged i.e. listOfGeneratorSD = GN_IN + GN_ON. More... | |
| virtual void | prepareSetOfGenerators (std::vector< boost::shared_ptr< Generator_Rn_SD > > &GN_IN, std::vector< boost::shared_ptr< Generator_Rn_SD > > &GN_OUT) |
| Specific to the double description algorithm When chopping a polyhedral body with a hyperplane, if the set of generators OUT is empty, only keep the generators ON and ignore the generators IN. In the case of a half-space, keep things unchanged i.e. listOfGeneratorSD = GN_IN + GN_ON. More... | |
Public Member Functions inherited from HalfSpace_Rn | |
| HalfSpace_Rn () | |
| Constructor. More... | |
| HalfSpace_Rn (unsigned int n) | |
| virtual | ~HalfSpace_Rn () |
| void | setCoefficients (const vector< double > &vec) |
| double | getCoefficient (unsigned int i) const |
| void | setCoefficient (unsigned int i, double c) |
| void | setConstant (double c) |
| double | getConstant () const |
| void | negate () |
| int | dimension () const |
| std::string | getSideAsText () const |
| boost::numeric::ublas::vector< double >::const_iterator | begin () const |
| boost::numeric::ublas::vector< double >::const_iterator | end () const |
| const boost::numeric::ublas::vector< double > & | vect () const |
| double | computeDistancePointHyperplane (const boost::numeric::ublas::vector< double > &thisPoint) const |
| double | computeDistancePointHyperplane (const boost::numeric::ublas::vector< double > &thisPoint, double halfSpaceNorm) const |
| double | computeDistancePointHyperplane (const boost::numeric::ublas::vector< double > &thisPoint, boost::numeric::ublas::vector< double > &projectedPoint, double halfSpaceNorm) const |
| void | print () const |
Additional Inherited Members | |
Public Types inherited from HalfSpace_Rn | |
| enum | State { hs_ON = 0, hs_IN = 1, hs_OUT = 2, hs_UNKNOWN = 3, hs_IN_OR_OUT = 4, hs_OUT_TO_ON = 5 } |
Static Public Member Functions inherited from HalfSpace_Rn | |
| static std::string | getStateAsText (const HalfSpace_Rn::State &) |
Protected Attributes inherited from HalfSpace_Rn | |
| boost::numeric::ublas::vector< double > | _coefficients |
| The normal vector. More... | |
| double | _constant |
| The second member constant. More... | |
A linear (n-1) dimension space in.
\[ \mathbb{R}^n \]
.
_constant + _coefficients[0].x1 + ... + _coefficients[n-1].xn = 0.
Definition at line 188 of file HalfSpace_Rn.h.
|
inline |
Constructor for polytopes i.e. bounded convex polyhedra.
Definition at line 192 of file HalfSpace_Rn.h.
|
inlinevirtual |
Destructor.
Definition at line 195 of file HalfSpace_Rn.h.
|
inlinevirtual |
Reimplemented from HalfSpace_Rn.
Definition at line 197 of file HalfSpace_Rn.h.
|
inlinevirtual |
Specific to the double description algorithm When chopping a polyhedral body with a hyperplane, if the set of generators OUT is empty, only keep the generators ON and ignore the generators IN. In the case of a half-space, keep things unchanged i.e. listOfGeneratorSD = GN_IN + GN_ON.
Reimplemented from HalfSpace_Rn.
Definition at line 228 of file HalfSpace_Rn.h.
|
inlinevirtual |
Specific to the double description algorithm When chopping a polyhedral body with a hyperplane, if the set of generators OUT is empty, only keep the generators ON and ignore the generators IN. In the case of a half-space, keep things unchanged i.e. listOfGeneratorSD = GN_IN + GN_ON.
Specific to the double description algorithm When we perform a flat truncation the set of generators IN . is transferred into the set of generators OUT as both of them will be dropped . then it is emptied before receiving the generators ON and NEW i.e. the ones we keep
Reimplemented from HalfSpace_Rn.
Definition at line 244 of file HalfSpace_Rn.h.
|
inlinevirtual |
Specific to the double description algorithm Test whether an intersection with a hyperplane has generated an empty set or not.
Reimplemented from HalfSpace_Rn.
Definition at line 210 of file HalfSpace_Rn.h.
|
inlinevirtual |
Specific to the double description algorithm Test whether an intersection with a hyperplane has generated an empty set or not.
Reimplemented from HalfSpace_Rn.
Definition at line 219 of file HalfSpace_Rn.h.