|  | RobWorkProject
    23.9.11-
    | 
Proxy class for a QuadraticShell, that allows sorting of faces without modifying the original object. More...
#include <IndexedQuadraticFaceArray.hpp>
Inherits QuadraticShell.
| Classes | |
| struct | IndexedFace | 
| Structure that holds information for each face.  More... | |
| Public Types | |
| typedef rw::core::Ptr< IndexedQuadraticFaceArray > | Ptr | 
| Smart pointer type to IndexedQuadraticFaceArray. | |
| typedef rw::core::Ptr< const IndexedQuadraticFaceArray > | CPtr | 
| Smart pointer type for a const IndexedQuadraticFaceArray. | |
|  Public Types inherited from QuadraticShell | |
| typedef rw::core::Ptr< QuadraticShell > | Ptr | 
| Smart pointer type to QuadraticShell. | |
| typedef rw::core::Ptr< const QuadraticShell > | CPtr | 
| Smart pointer type for a const QuadraticShell. | |
|  Public Types inherited from Shell | |
| typedef rw::core::Ptr< Shell > | Ptr | 
| Smart pointer type to Shell. | |
| typedef rw::core::Ptr< const Shell > | CPtr | 
| 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< GeometryData > | Ptr | 
| smart pointer type to this class | |
| typedef rw::core::Ptr< const GeometryData > | CPtr | 
| const smart pointer type to this class | |
| Public Member Functions | |
| IndexedQuadraticFaceArray (rw::core::Ptr< const QuadraticShell > quadric) | |
| Construct new indexed face array.  More... | |
| IndexedQuadraticFaceArray (rw::core::Ptr< const QuadraticShell > quadric, const std::vector< IndexedFace > &faces, std::size_t first, std::size_t last) | |
| Construct new indexed face array.  More... | |
| virtual | ~IndexedQuadraticFaceArray () | 
| 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 QuadraticFace > | getFace (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... | |
| IndexedFace | getIndexedFace (std::size_t idx) const | 
| Get the indexed face.  More... | |
| void | getIndexedFace (std::size_t idx, IndexedFace &dst) const | 
| Get the indexed face.  More... | |
| void | sortAxis (int axis, const rw::math::Transform3D<> &t3d) | 
| Sort the faces according to their extent in the direction along axis.  More... | |
| IndexedQuadraticFaceArray | getSubRange (std::size_t first, std::size_t last) const | 
| Take out a subrange of faces.  More... | |
| std::size_t | getGlobalIndex (std::size_t idx) const | 
| Get the original face index.  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< TriMesh > | getTriMesh (bool forceCopy=true) | 
| gets a trimesh representation of this geometry data.  More... | |
| virtual rw::core::Ptr< TriMesh > | getTriMesh (bool forceCopy=true) const | 
| gets a trimesh representation of this geometry data.  More... | |
| rw::core::Ptr< const Face > | getFace (std::size_t idx) const | 
| Get a surface patch.  More... | |
| virtual void | getFace (std::size_t idx, GenericFace &face) 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. | |
Proxy class for a QuadraticShell, that allows sorting of faces without modifying the original object.
| IndexedQuadraticFaceArray | ( | rw::core::Ptr< const QuadraticShell > | quadric | ) | 
Construct new indexed face array.
| quadric | [in] the underlying Shell. | 
| IndexedQuadraticFaceArray | ( | rw::core::Ptr< const QuadraticShell > | quadric, | 
| const std::vector< IndexedFace > & | faces, | ||
| std::size_t | first, | ||
| std::size_t | last | ||
| ) | 
Construct new indexed face array.
| quadric | [in] the underlying Shell. | 
| faces | [in] the faces to include in the proxy. | 
| first | [in] skip the first faces. | 
| last | [in] last index of faces to include. | 
| 
 | virtual | 
Get a surface patch.
| idx | [in] index of patch. | 
Implements QuadraticShell.
| 
 | virtual | 
Get a surface patch.
| idx | [in] index of the patch. | 
| dst | [out] an existing face to write data to. | 
Implements QuadraticShell.
| 
 | inline | 
Get the original face index.
| idx | [in] the indexed face index. | 
| IndexedFace getIndexedFace | ( | std::size_t | idx | ) | const | 
Get the indexed face.
| idx | [in] index of indexed face. | 
| void getIndexedFace | ( | std::size_t | idx, | 
| IndexedFace & | dst | ||
| ) | const | 
Get the indexed face.
| idx | [in] index of indexed face. | 
| dst | [out] existing object to copy data into. | 
| IndexedQuadraticFaceArray getSubRange | ( | std::size_t | first, | 
| std::size_t | last | ||
| ) | const | 
Take out a subrange of faces.
| first | [in] first index. | 
| last | [in] last index. | 
| 
 | virtual | 
| 
 | virtual | 
Get the number of surface patches in this shell.
Implements QuadraticShell.
| void sortAxis | ( | int | axis, | 
| const rw::math::Transform3D<> & | t3d | ||
| ) | 
Sort the faces according to their extent in the direction along axis.
| axis | [in] axis to sort. | 
| t3d | [in] transform giving the position and axis directions. |