![]() |
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. |