RobWorkProject  23.9.11-
Public Types | Public Member Functions | List of all members
PlainQuadraticShell Class Reference

A collection of concrete Quadratic surface patches, that together form a shell. More...

#include <PlainQuadraticShell.hpp>

Inherits QuadraticShell.

Public Types

typedef rw::core::Ptr< PlainQuadraticShellPtr
 Smart pointer type to PlainQuadraticShell.
 
typedef rw::core::Ptr< const PlainQuadraticShellCPtr
 Smart pointer type for a const PlainQuadraticShell.
 
- Public Types inherited from QuadraticShell
typedef rw::core::Ptr< QuadraticShellPtr
 Smart pointer type to QuadraticShell.
 
typedef rw::core::Ptr< const QuadraticShellCPtr
 Smart pointer type for a const QuadraticShell.
 
- Public Types inherited from Shell
typedef rw::core::Ptr< ShellPtr
 Smart pointer type to Shell.
 
typedef rw::core::Ptr< const ShellCPtr
 Smart pointer type to const Shell.
 
- Public Types inherited from GeometryData
enum  GeometryType {
  PointCloud , LineMesh , PlainTriMesh , IdxTriMesh ,
  SpherePrim , BoxPrim , OBBPrim , AABBPrim ,
  LinePrim , PointPrim , PyramidPrim , ConePrim ,
  TrianglePrim , CylinderPrim , TubePrim , PlanePrim ,
  RayPrim , Implicit , Quadratic , UserType
}
 geometry data types
 
typedef rw::core::Ptr< GeometryDataPtr
 smart pointer type to this class
 
typedef rw::core::Ptr< const GeometryDataCPtr
 const smart pointer type to this class
 

Public Member Functions

 PlainQuadraticShell ()
 Constructor.
 
 PlainQuadraticShell (const std::vector< rw::core::Ptr< QuadraticFace >> &faces)
 Construct shell from a collection of Quadratic faces. More...
 
 PlainQuadraticShell (const PlainQuadraticShell &shell)
 Copy constructor. More...
 
 PlainQuadraticShell (const QuadraticShell &shell)
 Copy constructor. More...
 
virtual ~PlainQuadraticShell ()
 Destructor.
 
virtual bool isConvex ()
 test if this geometry data is convex More...
 
virtual std::size_t size () const
 Get the number of surface patches in this shell. More...
 
virtual rw::core::Ptr< const QuadraticFacegetFace (std::size_t idx) const
 Get a surface patch. More...
 
virtual void getFace (std::size_t idx, QuadraticFace &dst) const
 Get a surface patch. More...
 
virtual void getFace (std::size_t idx, GenericFace &face) const
 Get a surface patch. More...
 
void add (const rw::core::Ptr< QuadraticFace > face)
 Add Quadratic face. More...
 
void add (const PlainQuadraticShell &shell)
 Add faces from another shell. More...
 
void add (const QuadraticShell &shell)
 Add faces from another shell. More...
 
void clear ()
 Remove all faces from the shell.
 
rw::core::Ptr< PlainQuadraticShellclone () const
 Make a copy of the shell. More...
 
- Public Member Functions inherited from QuadraticShell
 QuadraticShell ()
 Constructor.
 
virtual ~QuadraticShell ()
 Destructor.
 
virtual GeometryType getType () const
 the type of this primitive More...
 
void setMeshResolution (double resolution)
 Set the resolution used for discretization in the getTriMesh and faceTriMesh functions. More...
 
- Public Member Functions inherited from Shell
 Shell ()
 Constructor.
 
virtual ~Shell ()
 Destructor.
 
virtual rw::core::Ptr< TriMeshgetTriMesh (bool forceCopy=true)
 gets a trimesh representation of this geometry data. More...
 
virtual rw::core::Ptr< TriMeshgetTriMesh (bool forceCopy=true) const
 gets a trimesh representation of this geometry data. More...
 
rw::core::Ptr< const FacegetFace (std::size_t idx) const
 Get a surface patch. More...
 
virtual std::pair< double, double > extremums (const rw::math::Vector3D< double > &dir) const
 Get the minimum and maximum values of the shell in a certain direction. More...
 
virtual OBB obb () const
 Create Oriented Bounding Box (OBB) as a bounding volume for the shell. More...
 
- Public Member Functions inherited from GeometryData
virtual ~GeometryData ()
 Destructor.
 

Additional Inherited Members

- Static Public Member Functions inherited from GeometryData
static std::string toString (GeometryType type)
 format GeometryType to string More...
 
- Protected Attributes inherited from QuadraticShell
double _resolution
 Resolution to use for discretization into triangle mesh.
 

Detailed Description

A collection of concrete Quadratic surface patches, that together form a shell.

Constructor & Destructor Documentation

◆ PlainQuadraticShell() [1/3]

PlainQuadraticShell ( const std::vector< rw::core::Ptr< QuadraticFace >> &  faces)
inline

Construct shell from a collection of Quadratic faces.

Parameters
faces[in] collection of Quadratic faces.

◆ PlainQuadraticShell() [2/3]

PlainQuadraticShell ( const PlainQuadraticShell shell)
inline

Copy constructor.

Parameters
shell[in] other shell to copy.

◆ PlainQuadraticShell() [3/3]

PlainQuadraticShell ( const QuadraticShell shell)
inline

Copy constructor.

Parameters
shell[in] other shell to copy.

Member Function Documentation

◆ add() [1/3]

void add ( const PlainQuadraticShell shell)
inline

Add faces from another shell.

Parameters
shell[in] other shell.

◆ add() [2/3]

void add ( const QuadraticShell shell)
inline

Add faces from another shell.

Parameters
shell[in] other shell.

◆ add() [3/3]

void add ( const rw::core::Ptr< QuadraticFace face)
inline

Add Quadratic face.

Parameters
face[in] quadratic face to add.

◆ clone()

rw::core::Ptr<PlainQuadraticShell> clone ( ) const
inline

Make a copy of the shell.

Returns
a new copy.

◆ getFace() [1/3]

virtual rw::core::Ptr<const QuadraticFace> getFace ( std::size_t  idx) const
inlinevirtual

Get a surface patch.

Parameters
idx[in] index of patch.
Returns
a copy of the surface patch.

Implements QuadraticShell.

◆ getFace() [2/3]

virtual void getFace ( std::size_t  idx,
GenericFace face 
) const
virtual

Get a surface patch.

Parameters
idx[in] index of patch.
face[out] existing face to copy data into.

Reimplemented from Shell.

◆ getFace() [3/3]

virtual void getFace ( std::size_t  idx,
QuadraticFace dst 
) const
virtual

Get a surface patch.

Parameters
idx[in] index of the patch.
dst[out] an existing face to write data to.

Implements QuadraticShell.

◆ isConvex()

virtual bool isConvex ( )
inlinevirtual

test if this geometry data is convex

Returns
true if convex

Implements QuadraticShell.

◆ size()

virtual std::size_t size ( ) const
inlinevirtual

Get the number of surface patches in this shell.

Returns
the number of surface patches.

Implements QuadraticShell.


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