HalfSpace Class Referencefinal

Definition of a half space. More...

#include <geometry/shape_specification.h>

Inheritance diagram for HalfSpace:
Collaboration diagram for HalfSpace:

Public Member Functions

 HalfSpace ()
Implements CopyConstructible, CopyAssignable, MoveConstructible, MoveAssignable
 HalfSpace (const HalfSpace &)=default
HalfSpaceoperator= (const HalfSpace &)=default
 HalfSpace (HalfSpace &&)=default
HalfSpaceoperator= (HalfSpace &&)=default
- Public Member Functions inherited from Shape
virtual ~Shape ()
void Reify (ShapeReifier *reifier, void *user_data=nullptr) const
 Causes this description to be reified in the given reifier. More...
std::unique_ptr< ShapeClone () const
 Creates a unique copy of this shape. More...

Static Public Member Functions

static Isometry3< doubleMakePose (const Vector3< double > &Cz_F, const Vector3< double > &p_FC)
 Creates the pose of a canonical half space in frame F. More...

Additional Inherited Members

- Protected Member Functions inherited from Shape
template<typename S >
 Shape (ShapeTag< S > tag)
 Constructor available for derived class construction. More...
 Shape (const Shape &)=default
Shapeoperator= (const Shape &)=default
 Shape (Shape &&)=default
Shapeoperator= (Shape &&)=default

Detailed Description

Definition of a half space.

In its canonical frame, the plane defining the boundary of the half space is that frame's z = 0 plane. By implication, the plane's normal points in the +z direction and the origin lies on the plane. Other shapes are considered to be penetrating the half space if there exists a point on the test shape that lies on the side of the plane opposite the normal.

Constructor & Destructor Documentation

HalfSpace ( const HalfSpace )
HalfSpace ( HalfSpace &&  )
HalfSpace ( )

Member Function Documentation

Isometry3< double > MakePose ( const Vector3< double > &  Cz_F,
const Vector3< double > &  p_FC 

Creates the pose of a canonical half space in frame F.

The half space's normal is aligned to the positive z-axis of its canonical frame C. Given the measure of that axis in frame F (Cz_F) and a position vector to a point on the plane expressed in the same frame, p_FC, creates the pose of the half space in frame F: X_FC.

Cz_FThe positive z-axis of the canonical frame expressed in frame F. It must be a non-zero vector but need not be unit length.
p_FCA point lying on the half-space's boundary measured and expressed in frame F.
Return values
<tt>X_FC</tt>The pose of the canonical half-space in frame F.
std::logic_errorif the normal is close to a zero-vector (e.g., ‖normal_F‖₂ < ε).
HalfSpace& operator= ( const HalfSpace )
HalfSpace& operator= ( HalfSpace &&  )

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