cisst-saw
Loading...
Searching...
No Matches
TriangleClosestPointSolver Class Reference

#include <TriangleClosestPointSolver.h>

Public Member Functions

 TriangleClosestPointSolver ()
 TriangleClosestPointSolver (const msh3Mesh &mesh)
 TriangleClosestPointSolver (const vctDynamicVector< vct3 > &vertices, const vctDynamicVector< vctInt3 > &triangles)
void init (const vctDynamicVector< vct3 > &vertices, const vctDynamicVector< vctInt3 > &triangles)
void FindClosestPointOnTriangle (const vct3 &point, int triangleIndex, vct3 &closestPoint)
int FindClosestPointOnTriangleWithEdgeDetection (const vct3 &point, int triangleIndex, vct3 &closestPoint)
void FindClosestPointOnTriangle (const vct3 &point, const vct3 &v1, const vct3 &v2, const vct3 &v3, vct3 &closestPoint)
void FindMostLikelyPointOnTriangle (const vct3 &point, const vct3 &v0, const vct3 &v1, const vct3 &v2, const vct3x3 &N, const vct3x3 &Ninv, vct3 &closestPoint)
void FindMostLikelyPointOnTriangle (const vct3 &point, int triangleIndex, const vct3x3 &N, const vct3x3 &Ninv, vct3 &closestPoint)

Protected Member Functions

int FindClosestPointOnTriangle (const vct3 &point, vct3 &closestPoint, const vctFrm3 &triXfm, const vctFrm3 &triXfmInv, const vct2 &P2, const vct2 &P3, const vct2 &P1P3, const vct2 &P2P3, const vct2 &E13, const vct2 &E23)
vctFrm3 computeTriangleXfm (const vct3 &v1, const vct3 &v2, const vct3 &v3)
vctFrm3 computeTriangleXfm (int triangleIndex)
double E (const vct2 &xy, const vct2 &XY, const vct2 &dxdy)

Protected Attributes

vctDynamicVector< vct3vertices
vctDynamicVector< vctInt3triangles
vctDynamicVector< vctFrm3triXfm
vctDynamicVector< vctFrm3triXfmInv
const vct2 P1
vctDynamicVector< vct2P2
vctDynamicVector< vct2P3
vctDynamicVector< vct2P1P3
vctDynamicVector< vct2P2P3
const vct2 E12
vctDynamicVector< vct2E13
vctDynamicVector< vct2E23

Constructor & Destructor Documentation

◆ TriangleClosestPointSolver() [1/3]

TriangleClosestPointSolver::TriangleClosestPointSolver ( )
inline

◆ TriangleClosestPointSolver() [2/3]

TriangleClosestPointSolver::TriangleClosestPointSolver ( const msh3Mesh & mesh)

◆ TriangleClosestPointSolver() [3/3]

TriangleClosestPointSolver::TriangleClosestPointSolver ( const vctDynamicVector< vct3 > & vertices,
const vctDynamicVector< vctInt3 > & triangles )

Member Function Documentation

◆ computeTriangleXfm() [1/2]

vctFrm3 TriangleClosestPointSolver::computeTriangleXfm ( const vct3 & v1,
const vct3 & v2,
const vct3 & v3 )
protected

◆ computeTriangleXfm() [2/2]

vctFrm3 TriangleClosestPointSolver::computeTriangleXfm ( int triangleIndex)
protected

◆ E()

double TriangleClosestPointSolver::E ( const vct2 & xy,
const vct2 & XY,
const vct2 & dxdy )
inlineprotected

◆ FindClosestPointOnTriangle() [1/3]

void TriangleClosestPointSolver::FindClosestPointOnTriangle ( const vct3 & point,
const vct3 & v1,
const vct3 & v2,
const vct3 & v3,
vct3 & closestPoint )

◆ FindClosestPointOnTriangle() [2/3]

void TriangleClosestPointSolver::FindClosestPointOnTriangle ( const vct3 & point,
int triangleIndex,
vct3 & closestPoint )

◆ FindClosestPointOnTriangle() [3/3]

int TriangleClosestPointSolver::FindClosestPointOnTriangle ( const vct3 & point,
vct3 & closestPoint,
const vctFrm3 & triXfm,
const vctFrm3 & triXfmInv,
const vct2 & P2,
const vct2 & P3,
const vct2 & P1P3,
const vct2 & P2P3,
const vct2 & E13,
const vct2 & E23 )
protected

◆ FindClosestPointOnTriangleWithEdgeDetection()

int TriangleClosestPointSolver::FindClosestPointOnTriangleWithEdgeDetection ( const vct3 & point,
int triangleIndex,
vct3 & closestPoint )

◆ FindMostLikelyPointOnTriangle() [1/2]

void TriangleClosestPointSolver::FindMostLikelyPointOnTriangle ( const vct3 & point,
const vct3 & v0,
const vct3 & v1,
const vct3 & v2,
const vct3x3 & N,
const vct3x3 & Ninv,
vct3 & closestPoint )

◆ FindMostLikelyPointOnTriangle() [2/2]

void TriangleClosestPointSolver::FindMostLikelyPointOnTriangle ( const vct3 & point,
int triangleIndex,
const vct3x3 & N,
const vct3x3 & Ninv,
vct3 & closestPoint )

◆ init()

void TriangleClosestPointSolver::init ( const vctDynamicVector< vct3 > & vertices,
const vctDynamicVector< vctInt3 > & triangles )

Member Data Documentation

◆ E12

const vct2 TriangleClosestPointSolver::E12
protected

◆ E13

vctDynamicVector<vct2> TriangleClosestPointSolver::E13
protected

◆ E23

vctDynamicVector<vct2> TriangleClosestPointSolver::E23
protected

◆ P1

const vct2 TriangleClosestPointSolver::P1
protected

◆ P1P3

vctDynamicVector<vct2> TriangleClosestPointSolver::P1P3
protected

◆ P2

vctDynamicVector<vct2> TriangleClosestPointSolver::P2
protected

◆ P2P3

vctDynamicVector<vct2> TriangleClosestPointSolver::P2P3
protected

◆ P3

vctDynamicVector<vct2> TriangleClosestPointSolver::P3
protected

◆ triangles

vctDynamicVector<vctInt3> TriangleClosestPointSolver::triangles
protected

◆ triXfm

vctDynamicVector<vctFrm3> TriangleClosestPointSolver::triXfm
protected

◆ triXfmInv

vctDynamicVector<vctFrm3> TriangleClosestPointSolver::triXfmInv
protected

◆ vertices

vctDynamicVector<vct3> TriangleClosestPointSolver::vertices
protected

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