politopix  4.1.0
 All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
HalfSpace_Rn Class Reference

A half-space whose frontier is a linear (n-1) dimension space.
_constant + _coefficients[0].x1 + ... + _coefficients[n-1].xn >= 0. More...

#include <HalfSpace_Rn.h>

Collaboration diagram for HalfSpace_Rn:
Collaboration graph

Public Types

enum  State {
  hs_ON = 0, hs_IN = 1, hs_OUT = 2, hs_UNKNOWN = 3,
  hs_IN_OR_OUT = 4
}
 

Public Member Functions

 HalfSpace_Rn (unsigned int n)
 Constructor. More...
 
 ~HalfSpace_Rn ()
 
double getCoefficient (unsigned int i) const throw (std::out_of_range)
 
void setCoefficient (unsigned int i, double c) throw (std::out_of_range)
 
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 dump (std::ostream &this_ostream) const
 

Static Public Member Functions

static std::string getStateAsText (const HalfSpace_Rn::State &)
 

Protected Attributes

boost::numeric::ublas::vector
< double > 
_coefficients
 The normal vector. More...
 
double _constant
 The second member constant. More...
 

Detailed Description

A half-space whose frontier is a linear (n-1) dimension space.
_constant + _coefficients[0].x1 + ... + _coefficients[n-1].xn >= 0.

Definition at line 37 of file HalfSpace_Rn.h.

Member Enumeration Documentation

Enumerator
hs_ON 
hs_IN 
hs_OUT 
hs_UNKNOWN 
hs_IN_OR_OUT 

Definition at line 41 of file HalfSpace_Rn.h.

Constructor & Destructor Documentation

HalfSpace_Rn::HalfSpace_Rn ( unsigned int  n)

Constructor.

Definition at line 29 of file HalfSpace_Rn.cpp.

HalfSpace_Rn::~HalfSpace_Rn ( )

Definition at line 32 of file HalfSpace_Rn.cpp.

Member Function Documentation

boost::numeric::ublas::vector<double>::const_iterator HalfSpace_Rn::begin ( ) const
inline

Definition at line 67 of file HalfSpace_Rn.h.

double HalfSpace_Rn::computeDistancePointHyperplane ( const boost::numeric::ublas::vector< double > &  thisPoint) const
inline

Definition at line 75 of file HalfSpace_Rn.h.

double HalfSpace_Rn::computeDistancePointHyperplane ( const boost::numeric::ublas::vector< double > &  thisPoint,
double  halfSpaceNorm 
) const
inline

Definition at line 83 of file HalfSpace_Rn.h.

double HalfSpace_Rn::computeDistancePointHyperplane ( const boost::numeric::ublas::vector< double > &  thisPoint,
boost::numeric::ublas::vector< double > &  projectedPoint,
double  halfSpaceNorm 
) const
inline

Definition at line 89 of file HalfSpace_Rn.h.

int HalfSpace_Rn::dimension ( ) const
inline

Definition at line 63 of file HalfSpace_Rn.h.

void HalfSpace_Rn::dump ( std::ostream &  this_ostream) const
inline

Definition at line 99 of file HalfSpace_Rn.h.

boost::numeric::ublas::vector<double>::const_iterator HalfSpace_Rn::end ( ) const
inline

Definition at line 69 of file HalfSpace_Rn.h.

double HalfSpace_Rn::getCoefficient ( unsigned int  i) const
throw (std::out_of_range
)

Definition at line 35 of file HalfSpace_Rn.cpp.

Here is the call graph for this function:

double HalfSpace_Rn::getConstant ( ) const
inline

Definition at line 59 of file HalfSpace_Rn.h.

std::string HalfSpace_Rn::getSideAsText ( ) const
inline

Definition at line 65 of file HalfSpace_Rn.h.

std::string HalfSpace_Rn::getStateAsText ( const HalfSpace_Rn::State state)
static

Definition at line 57 of file HalfSpace_Rn.cpp.

Here is the caller graph for this function:

void HalfSpace_Rn::negate ( )
inline

Definition at line 61 of file HalfSpace_Rn.h.

void HalfSpace_Rn::setCoefficient ( unsigned int  i,
double  c 
)
throw (std::out_of_range
)

Definition at line 46 of file HalfSpace_Rn.cpp.

Here is the call graph for this function:

void HalfSpace_Rn::setConstant ( double  c)
inline

Definition at line 57 of file HalfSpace_Rn.h.

const boost::numeric::ublas::vector<double>& HalfSpace_Rn::vect ( ) const
inline

Definition at line 71 of file HalfSpace_Rn.h.

Member Data Documentation

boost::numeric::ublas::vector<double> HalfSpace_Rn::_coefficients
protected

The normal vector.

Definition at line 112 of file HalfSpace_Rn.h.

double HalfSpace_Rn::_constant
protected

The second member constant.

Definition at line 114 of file HalfSpace_Rn.h.


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