Drake
HalfSpace Class Referencefinal

Definition of a half space. More...

#include <geometry/shape_specification.h>

Inheritance diagram for HalfSpace:
[legend]
Collaboration diagram for HalfSpace:
[legend]

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 & )
default
 HalfSpace ( HalfSpace && )
default
 HalfSpace ( )

Member Function Documentation

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

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.

Parameters
 Cz_F 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_FC A point lying on the half-space's boundary measured and expressed in frame F.
Return values
 X_FC The pose of the canonical half-space in frame F.
Exceptions
 std::logic_error if the normal is close to a zero-vector (e.g., ‖normal_F‖₂ < ε).
 HalfSpace& operator= ( const HalfSpace & )
default
 HalfSpace& operator= ( HalfSpace && )
default

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