Drake C++ Documentation
HalfSpace Class Referencefinal

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.

#include <drake/geometry/shape_specification.h>

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 math::RigidTransform< doubleMakePose (const Vector3< double > &Hz_dir_F, const Vector3< double > &p_FB)
 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

Constructor & Destructor Documentation

◆ HalfSpace() [1/3]

HalfSpace ( const HalfSpace )

◆ HalfSpace() [2/3]

HalfSpace ( HalfSpace &&  )

◆ HalfSpace() [3/3]

HalfSpace ( )

Member Function Documentation

◆ MakePose()

static math::RigidTransform<double> MakePose ( const Vector3< double > &  Hz_dir_F,
const Vector3< double > &  p_FB 

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 H. Given a vector that points in the same direction, measured in the F frame (Hz_dir_F) and a position vector to a point on the half space's boundary* expressed in the same frame, p_FB, creates the pose of the half space in frame F: X_FH.

Hz_dir_FA vector in the direction of the 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_FBA point B lying on the half space's boundary measured and expressed in frame F.
Return values
X_FHThe pose of the canonical half-space in frame F.
std::exceptionif the normal is close to a zero-vector (e.g., ‖normal_F‖₂ < ε).

◆ operator=() [1/2]

HalfSpace& operator= ( const HalfSpace )

◆ operator=() [2/2]

HalfSpace& operator= ( HalfSpace &&  )

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