#include <vhacdVHACD.h>
|
| VHACD () |
| Constructor. More...
|
|
uint32_t | GetNConvexHulls () const override |
|
void | Cancel () override |
|
void | GetConvexHull (uint32_t index, ConvexHull &ch) const override |
|
void | Clean () override |
|
void | Release () override |
|
bool | Compute (float const *points, uint32_t nPoints, uint32_t const *triangles, uint32_t nTriangles, const Parameters ¶ms) override |
|
bool | Compute (double const *points, uint32_t nPoints, uint32_t const *triangles, uint32_t nTriangles, const Parameters ¶ms) override |
|
bool | OCLInit (void const *oclDevice, VHACD::IVHACD::IUserLogger const *logger=nullptr) override |
|
bool | OCLRelease (IUserLogger const *logger=nullptr) override |
|
virtual bool | ComputeCenterOfMass (std::array< double, 3 > ¢erOfMass) const override |
|
| IVHACD ()=default |
|
virtual | ~IVHACD ()=default |
|
| IVHACD (const IVHACD &)=default |
|
IVHACD & | operator= (const IVHACD &)=default |
|
| IVHACD (IVHACD &&)=default |
|
IVHACD & | operator= (IVHACD &&)=default |
|
virtual void | Cancel ()=0 |
|
virtual bool | Compute (float const *points, uint32_t countPoints, uint32_t const *triangles, uint32_t countTriangles, const Parameters ¶ms)=0 |
|
virtual bool | Compute (double const *points, uint32_t countPoints, uint32_t const *triangles, uint32_t countTriangles, const Parameters ¶ms)=0 |
|
virtual uint32_t | GetNConvexHulls () const =0 |
|
virtual void | GetConvexHull (uint32_t index, ConvexHull &ch) const =0 |
|
virtual void | Clean ()=0 |
|
virtual void | Release ()=0 |
|
virtual bool | OCLInit (void const *oclDevice, IUserLogger const *logger=nullptr)=0 |
|
virtual bool | OCLRelease (IUserLogger const *logger=nullptr)=0 |
|
virtual bool | ComputeCenterOfMass (std::array< double, 3 > ¢erOfMass) const =0 |
|
virtual bool | IsReady () const |
|
|
void | SetCancel (bool cancel) |
|
bool | GetCancel () |
|
void | Update (const double stageProgress, const double operationProgress, const Parameters ¶ms) |
|
void | Init () |
|
void | ComputePrimitiveSet (const Parameters ¶ms) |
|
void | ComputeACD (const Parameters ¶ms) |
|
void | MergeConvexHulls (const Parameters ¶ms) |
|
void | SimplifyConvexHull (Mesh *const ch, const size_t nvertices, const double minVolume) |
|
void | SimplifyConvexHulls (const Parameters ¶ms) |
|
void | ComputeBestClippingPlane (const PrimitiveSet *inputPSet, const double volume, const SArray< Plane > &planes, const Vec3< double > &preferredCuttingDirection, const double w, const double alpha, const double beta, const int32_t convexhullDownsampling, const double progress0, const double progress1, Plane &bestPlane, double &minConcavity, const Parameters ¶ms) |
|
template<class T > |
void | AlignMesh (const T *const points, const uint32_t stridePoints, const uint32_t nPoints, const int32_t *const triangles, const uint32_t strideTriangles, const uint32_t nTriangles, const Parameters ¶ms) |
|
template<class T > |
void | VoxelizeMesh (const T *const points, const uint32_t stridePoints, const uint32_t nPoints, const int32_t *const triangles, const uint32_t strideTriangles, const uint32_t nTriangles, const Parameters ¶ms) |
|
template<class T > |
bool | ComputeACD (const T *const points, const uint32_t nPoints, const uint32_t *const triangles, const uint32_t nTriangles, const Parameters ¶ms) |
|
◆ VHACD()
tesseract_collision::VHACD::VHACD::VHACD |
( |
| ) |
|
|
inline |
◆ AlignMesh()
void tesseract_collision::VHACD::VHACD::AlignMesh |
( |
const T *const |
points, |
|
|
const uint32_t |
stridePoints, |
|
|
const uint32_t |
nPoints, |
|
|
const int32_t *const |
triangles, |
|
|
const uint32_t |
strideTriangles, |
|
|
const uint32_t |
nTriangles, |
|
|
const Parameters & |
params |
|
) |
| |
|
inlineprivate |
◆ Cancel()
void tesseract_collision::VHACD::VHACD::Cancel |
( |
| ) |
|
|
inlineoverridevirtual |
◆ Clean()
void tesseract_collision::VHACD::VHACD::Clean |
( |
| ) |
|
|
inlineoverridevirtual |
◆ Compute() [1/2]
bool tesseract_collision::VHACD::VHACD::Compute |
( |
double const * |
points, |
|
|
uint32_t |
nPoints, |
|
|
uint32_t const * |
triangles, |
|
|
uint32_t |
nTriangles, |
|
|
const Parameters & |
params |
|
) |
| |
|
overridevirtual |
◆ Compute() [2/2]
bool tesseract_collision::VHACD::VHACD::Compute |
( |
float const * |
points, |
|
|
uint32_t |
nPoints, |
|
|
uint32_t const * |
triangles, |
|
|
uint32_t |
nTriangles, |
|
|
const Parameters & |
params |
|
) |
| |
|
overridevirtual |
◆ ComputeACD() [1/2]
void tesseract_collision::VHACD::VHACD::ComputeACD |
( |
const Parameters & |
params | ) |
|
|
private |
◆ ComputeACD() [2/2]
bool tesseract_collision::VHACD::VHACD::ComputeACD |
( |
const T *const |
points, |
|
|
const uint32_t |
nPoints, |
|
|
const uint32_t *const |
triangles, |
|
|
const uint32_t |
nTriangles, |
|
|
const Parameters & |
params |
|
) |
| |
|
inlineprivate |
◆ ComputeBestClippingPlane()
void tesseract_collision::VHACD::VHACD::ComputeBestClippingPlane |
( |
const PrimitiveSet * |
inputPSet, |
|
|
const double |
volume, |
|
|
const SArray< Plane > & |
planes, |
|
|
const Vec3< double > & |
preferredCuttingDirection, |
|
|
const double |
w, |
|
|
const double |
alpha, |
|
|
const double |
beta, |
|
|
const int32_t |
convexhullDownsampling, |
|
|
const double |
progress0, |
|
|
const double |
progress1, |
|
|
Plane & |
bestPlane, |
|
|
double & |
minConcavity, |
|
|
const Parameters & |
params |
|
) |
| |
|
private |
◆ ComputeCenterOfMass()
bool tesseract_collision::VHACD::VHACD::ComputeCenterOfMass |
( |
std::array< double, 3 > & |
centerOfMass | ) |
const |
|
overridevirtual |
◆ ComputePrimitiveSet()
void tesseract_collision::VHACD::VHACD::ComputePrimitiveSet |
( |
const Parameters & |
params | ) |
|
|
private |
◆ GetCancel()
bool tesseract_collision::VHACD::VHACD::GetCancel |
( |
| ) |
|
|
inlineprivate |
◆ GetConvexHull()
void tesseract_collision::VHACD::VHACD::GetConvexHull |
( |
uint32_t |
index, |
|
|
ConvexHull & |
ch |
|
) |
| const |
|
inlineoverridevirtual |
◆ GetNConvexHulls()
uint32_t tesseract_collision::VHACD::VHACD::GetNConvexHulls |
( |
| ) |
const |
|
inlineoverridevirtual |
◆ Init()
void tesseract_collision::VHACD::VHACD::Init |
( |
| ) |
|
|
inlineprivate |
◆ MergeConvexHulls()
void tesseract_collision::VHACD::VHACD::MergeConvexHulls |
( |
const Parameters & |
params | ) |
|
|
private |
◆ OCLInit()
◆ OCLRelease()
bool tesseract_collision::VHACD::VHACD::OCLRelease |
( |
IUserLogger const * |
logger = nullptr | ) |
|
|
overridevirtual |
◆ Release()
void tesseract_collision::VHACD::VHACD::Release |
( |
| ) |
|
|
inlineoverridevirtual |
◆ SetCancel()
void tesseract_collision::VHACD::VHACD::SetCancel |
( |
bool |
cancel | ) |
|
|
inlineprivate |
◆ SimplifyConvexHull()
void tesseract_collision::VHACD::VHACD::SimplifyConvexHull |
( |
Mesh *const |
ch, |
|
|
const size_t |
nvertices, |
|
|
const double |
minVolume |
|
) |
| |
|
private |
◆ SimplifyConvexHulls()
void tesseract_collision::VHACD::VHACD::SimplifyConvexHulls |
( |
const Parameters & |
params | ) |
|
|
private |
◆ Update()
void tesseract_collision::VHACD::VHACD::Update |
( |
const double |
stageProgress, |
|
|
const double |
operationProgress, |
|
|
const Parameters & |
params |
|
) |
| |
|
inlineprivate |
◆ VoxelizeMesh()
void tesseract_collision::VHACD::VHACD::VoxelizeMesh |
( |
const T *const |
points, |
|
|
const uint32_t |
stridePoints, |
|
|
const uint32_t |
nPoints, |
|
|
const int32_t *const |
triangles, |
|
|
const uint32_t |
strideTriangles, |
|
|
const uint32_t |
nTriangles, |
|
|
const Parameters & |
params |
|
) |
| |
|
inlineprivate |
◆ m_barycenter
Vec3<double> tesseract_collision::VHACD::VHACD::m_barycenter |
|
private |
◆ m_cancel
bool tesseract_collision::VHACD::VHACD::m_cancel |
|
private |
◆ m_cancelMutex
Mutex tesseract_collision::VHACD::VHACD::m_cancelMutex |
|
private |
◆ m_convexHulls
SArray<Mesh*> tesseract_collision::VHACD::VHACD::m_convexHulls |
|
private |
◆ m_dim
size_t tesseract_collision::VHACD::VHACD::m_dim |
|
private |
◆ m_ompNumProcessors
int32_t tesseract_collision::VHACD::VHACD::m_ompNumProcessors |
|
private |
◆ m_operation
std::string tesseract_collision::VHACD::VHACD::m_operation |
|
private |
◆ m_operationProgress
double tesseract_collision::VHACD::VHACD::m_operationProgress |
|
private |
◆ m_overallProgress
double tesseract_collision::VHACD::VHACD::m_overallProgress |
|
private |
◆ m_pset
◆ m_rot
double tesseract_collision::VHACD::VHACD::m_rot[3][3] |
|
private |
◆ m_stage
std::string tesseract_collision::VHACD::VHACD::m_stage |
|
private |
◆ m_stageProgress
double tesseract_collision::VHACD::VHACD::m_stageProgress |
|
private |
◆ m_timer
Timer tesseract_collision::VHACD::VHACD::m_timer |
|
private |
◆ m_volume
Volume* tesseract_collision::VHACD::VHACD::m_volume |
|
private |
◆ m_volumeCH0
double tesseract_collision::VHACD::VHACD::m_volumeCH0 |
|
private |
◆ mRaycastMesh
RaycastMesh* tesseract_collision::VHACD::VHACD::mRaycastMesh { nullptr } |
|
private |
The documentation for this class was generated from the following files:
- tesseract_collision/vhacd/include/tesseract_collision/vhacd/inc/vhacdVHACD.h
- tesseract_collision/vhacd/src/vhacd/VHACD.cpp