Tesseract
Motion Planning Environment
Loading...
Searching...
No Matches
Public Member Functions | Private Attributes | List of all members
tesseract_collision::VHACD::Mesh Class Reference

Triangular mesh data structure. More...

#include <vhacdMesh.h>

Collaboration diagram for tesseract_collision::VHACD::Mesh:
Collaboration graph
[legend]

Public Member Functions

void AddPoint (const Vec3< double > &pt)
 
void SetPoint (size_t index, const Vec3< double > &pt)
 
const Vec3< double > & GetPoint (size_t index) const
 
Vec3< double > & GetPoint (size_t index)
 
size_t GetNPoints () const
 
double * GetPoints ()
 
const double * GetPoints () const
 
const Vec3< double > * GetPointsBuffer () const
 
Vec3< double > * GetPointsBuffer ()
 
void AddTriangle (const Vec3< int32_t > &tri)
 
void SetTriangle (size_t index, const Vec3< int32_t > &tri)
 
const Vec3< int32_t > & GetTriangle (size_t index) const
 
Vec3< int32_t > & GetTriangle (size_t index)
 
size_t GetNTriangles () const
 
int32_t * GetTriangles ()
 
const int32_t * GetTriangles () const
 
const Vec3< int32_t > * GetTrianglesBuffer () const
 
Vec3< int32_t > * GetTrianglesBuffer ()
 
const Vec3< double > & GetCenter () const
 
const Vec3< double > & GetMinBB () const
 
const Vec3< double > & GetMaxBB () const
 
void ClearPoints ()
 
void ClearTriangles ()
 
void Clear ()
 
void ResizePoints (size_t nPts)
 
void ResizeTriangles (size_t nTri)
 
void CopyPoints (SArray< Vec3< double > > &points) const
 
double GetDiagBB () const
 
double ComputeVolume () const
 
void ComputeConvexHull (const double *const pts, const size_t nPts)
 
void Clip (const Plane &plane, SArray< Vec3< double > > &positivePart, SArray< Vec3< double > > &negativePart) const
 
bool IsInside (const Vec3< double > &pt) const
 
double ComputeDiagBB ()
 
Vec3< double > & ComputeCenter (void)
 
bool LoadOFF (const std::string &fileName, bool invert)
 
bool SaveVRML2 (const std::string &fileName) const
 
bool SaveVRML2 (std::ofstream &fout, const Material &material) const
 
bool SaveOFF (const std::string &fileName) const
 
 Mesh ()
 Constructor. More...
 
 ~Mesh (void)
 Destructor. More...
 

Private Attributes

SArray< Vec3< double > > m_points
 
SArray< Vec3< int32_t > > m_triangles
 
Vec3< double > m_minBB
 
Vec3< double > m_maxBB
 
Vec3< double > m_center
 
double m_diag
 

Detailed Description

Triangular mesh data structure.

Constructor & Destructor Documentation

◆ Mesh()

tesseract_collision::VHACD::Mesh::Mesh ( )

Constructor.

◆ ~Mesh()

tesseract_collision::VHACD::Mesh::~Mesh ( void  )

Destructor.

Member Function Documentation

◆ AddPoint()

void tesseract_collision::VHACD::Mesh::AddPoint ( const Vec3< double > &  pt)
inline

◆ AddTriangle()

void tesseract_collision::VHACD::Mesh::AddTriangle ( const Vec3< int32_t > &  tri)
inline

◆ Clear()

void tesseract_collision::VHACD::Mesh::Clear ( )
inline

◆ ClearPoints()

void tesseract_collision::VHACD::Mesh::ClearPoints ( )
inline

◆ ClearTriangles()

void tesseract_collision::VHACD::Mesh::ClearTriangles ( )
inline

◆ Clip()

void tesseract_collision::VHACD::Mesh::Clip ( const Plane plane,
SArray< Vec3< double > > &  positivePart,
SArray< Vec3< double > > &  negativePart 
) const

◆ ComputeCenter()

Vec3< double > & tesseract_collision::VHACD::Mesh::ComputeCenter ( void  )

◆ ComputeConvexHull()

void tesseract_collision::VHACD::Mesh::ComputeConvexHull ( const double *const  pts,
const size_t  nPts 
)

◆ ComputeDiagBB()

double tesseract_collision::VHACD::Mesh::ComputeDiagBB ( )

◆ ComputeVolume()

double tesseract_collision::VHACD::Mesh::ComputeVolume ( ) const

◆ CopyPoints()

void tesseract_collision::VHACD::Mesh::CopyPoints ( SArray< Vec3< double > > &  points) const
inline

◆ GetCenter()

const Vec3< double > & tesseract_collision::VHACD::Mesh::GetCenter ( ) const
inline

◆ GetDiagBB()

double tesseract_collision::VHACD::Mesh::GetDiagBB ( ) const
inline

◆ GetMaxBB()

const Vec3< double > & tesseract_collision::VHACD::Mesh::GetMaxBB ( ) const
inline

◆ GetMinBB()

const Vec3< double > & tesseract_collision::VHACD::Mesh::GetMinBB ( ) const
inline

◆ GetNPoints()

size_t tesseract_collision::VHACD::Mesh::GetNPoints ( ) const
inline

◆ GetNTriangles()

size_t tesseract_collision::VHACD::Mesh::GetNTriangles ( ) const
inline

◆ GetPoint() [1/2]

Vec3< double > & tesseract_collision::VHACD::Mesh::GetPoint ( size_t  index)
inline

◆ GetPoint() [2/2]

const Vec3< double > & tesseract_collision::VHACD::Mesh::GetPoint ( size_t  index) const
inline

◆ GetPoints() [1/2]

double * tesseract_collision::VHACD::Mesh::GetPoints ( )
inline

◆ GetPoints() [2/2]

const double * tesseract_collision::VHACD::Mesh::GetPoints ( ) const
inline

◆ GetPointsBuffer() [1/2]

Vec3< double > * tesseract_collision::VHACD::Mesh::GetPointsBuffer ( )
inline

◆ GetPointsBuffer() [2/2]

const Vec3< double > * tesseract_collision::VHACD::Mesh::GetPointsBuffer ( ) const
inline

◆ GetTriangle() [1/2]

Vec3< int32_t > & tesseract_collision::VHACD::Mesh::GetTriangle ( size_t  index)
inline

◆ GetTriangle() [2/2]

const Vec3< int32_t > & tesseract_collision::VHACD::Mesh::GetTriangle ( size_t  index) const
inline

◆ GetTriangles() [1/2]

int32_t * tesseract_collision::VHACD::Mesh::GetTriangles ( )
inline

◆ GetTriangles() [2/2]

const int32_t * tesseract_collision::VHACD::Mesh::GetTriangles ( ) const
inline

◆ GetTrianglesBuffer() [1/2]

Vec3< int32_t > * tesseract_collision::VHACD::Mesh::GetTrianglesBuffer ( )
inline

◆ GetTrianglesBuffer() [2/2]

const Vec3< int32_t > * tesseract_collision::VHACD::Mesh::GetTrianglesBuffer ( ) const
inline

◆ IsInside()

bool tesseract_collision::VHACD::Mesh::IsInside ( const Vec3< double > &  pt) const

◆ LoadOFF()

bool tesseract_collision::VHACD::Mesh::LoadOFF ( const std::string &  fileName,
bool  invert 
)

◆ ResizePoints()

void tesseract_collision::VHACD::Mesh::ResizePoints ( size_t  nPts)
inline

◆ ResizeTriangles()

void tesseract_collision::VHACD::Mesh::ResizeTriangles ( size_t  nTri)
inline

◆ SaveOFF()

bool tesseract_collision::VHACD::Mesh::SaveOFF ( const std::string &  fileName) const

◆ SaveVRML2() [1/2]

bool tesseract_collision::VHACD::Mesh::SaveVRML2 ( const std::string &  fileName) const

◆ SaveVRML2() [2/2]

bool tesseract_collision::VHACD::Mesh::SaveVRML2 ( std::ofstream &  fout,
const Material material 
) const

◆ SetPoint()

void tesseract_collision::VHACD::Mesh::SetPoint ( size_t  index,
const Vec3< double > &  pt 
)
inline

◆ SetTriangle()

void tesseract_collision::VHACD::Mesh::SetTriangle ( size_t  index,
const Vec3< int32_t > &  tri 
)
inline

Member Data Documentation

◆ m_center

Vec3<double> tesseract_collision::VHACD::Mesh::m_center
private

◆ m_diag

double tesseract_collision::VHACD::Mesh::m_diag
private

◆ m_maxBB

Vec3<double> tesseract_collision::VHACD::Mesh::m_maxBB
private

◆ m_minBB

Vec3<double> tesseract_collision::VHACD::Mesh::m_minBB
private

◆ m_points

SArray<Vec3<double> > tesseract_collision::VHACD::Mesh::m_points
private

◆ m_triangles

SArray<Vec3<int32_t> > tesseract_collision::VHACD::Mesh::m_triangles
private

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