Static Public Member Functions | List of all members
fcl::detail::TriangleDistance< S > Class Template Reference

Triangle distance functions. More...

#include <triangle_distance.h>

Static Public Member Functions

static void segPoints (const Vector3< S > &P, const Vector3< S > &A, const Vector3< S > &Q, const Vector3< S > &B, Vector3< S > &VEC, Vector3< S > &X, Vector3< S > &Y)
 Returns closest points between an segment pair. The first segment is P + t * A The second segment is Q + t * B X, Y are the closest points on the two segments VEC is the vector between X and Y. More...
 
static S triDistance (const Vector3< S > &S1, const Vector3< S > &S2, const Vector3< S > &S3, const Vector3< S > &T1, const Vector3< S > &T2, const Vector3< S > &T3, const Matrix3< S > &R, const Vector3< S > &Tl, Vector3< S > &P, Vector3< S > &Q)
 
static S triDistance (const Vector3< S > &S1, const Vector3< S > &S2, const Vector3< S > &S3, const Vector3< S > &T1, const Vector3< S > &T2, const Vector3< S > &T3, const Transform3< S > &tf, Vector3< S > &P, Vector3< S > &Q)
 
static S triDistance (const Vector3< S > &S1, const Vector3< S > &S2, const Vector3< S > &S3, const Vector3< S > &T1, const Vector3< S > &T2, const Vector3< S > &T3, Vector3< S > &P, Vector3< S > &Q)
 
static S triDistance (const Vector3< S > T1[3], const Vector3< S > T2[3], const Matrix3< S > &R, const Vector3< S > &Tl, Vector3< S > &P, Vector3< S > &Q)
 Compute the closest points on two triangles given the relative transform between them, and returns the distance between them T1 and T2 are two triangles If the triangles are disjoint, P and Q give the closet points of T1 and T2 respectively. However, if the triangles overlap, P and Q are basically a random pair of points from the triangles, not coincident points on the intersection of the triangles, as might be expected. The returned P and Q are both in the coordinate of the first triangle's coordinate. More...
 
static S triDistance (const Vector3< S > T1[3], const Vector3< S > T2[3], const Transform3< S > &tf, Vector3< S > &P, Vector3< S > &Q)
 
static S triDistance (const Vector3< S > T1[3], const Vector3< S > T2[3], Vector3< S > &P, Vector3< S > &Q)
 Compute the closest points on two triangles given their absolute coordinate, and returns the distance between them T1 and T2 are two triangles If the triangles are disjoint, P and Q give the closet points of T1 and T2 respectively. However, if the triangles overlap, P and Q are basically a random pair of points from the triangles, not coincident points on the intersection of the triangles, as might be expected. More...
 

Detailed Description

template<typename S>
class fcl::detail::TriangleDistance< S >

Triangle distance functions.

Definition at line 51 of file triangle_distance.h.

Member Function Documentation

◆ segPoints()

template<typename S >
void fcl::detail::TriangleDistance< S >::segPoints ( const Vector3< S > &  P,
const Vector3< S > &  A,
const Vector3< S > &  Q,
const Vector3< S > &  B,
Vector3< S > &  VEC,
Vector3< S > &  X,
Vector3< S > &  Y 
)
static

Returns closest points between an segment pair. The first segment is P + t * A The second segment is Q + t * B X, Y are the closest points on the two segments VEC is the vector between X and Y.

Definition at line 55 of file triangle_distance-inl.h.

◆ triDistance() [1/6]

template<typename S >
S fcl::detail::TriangleDistance< S >::triDistance ( const Vector3< S > &  S1,
const Vector3< S > &  S2,
const Vector3< S > &  S3,
const Vector3< S > &  T1,
const Vector3< S > &  T2,
const Vector3< S > &  T3,
const Matrix3< S > &  R,
const Vector3< S > &  Tl,
Vector3< S > &  P,
Vector3< S > &  Q 
)
static

Definition at line 440 of file triangle_distance-inl.h.

◆ triDistance() [2/6]

template<typename S >
S fcl::detail::TriangleDistance< S >::triDistance ( const Vector3< S > &  S1,
const Vector3< S > &  S2,
const Vector3< S > &  S3,
const Vector3< S > &  T1,
const Vector3< S > &  T2,
const Vector3< S > &  T3,
const Transform3< S > &  tf,
Vector3< S > &  P,
Vector3< S > &  Q 
)
static

Definition at line 453 of file triangle_distance-inl.h.

◆ triDistance() [3/6]

template<typename S >
S fcl::detail::TriangleDistance< S >::triDistance ( const Vector3< S > &  S1,
const Vector3< S > &  S2,
const Vector3< S > &  S3,
const Vector3< S > &  T1,
const Vector3< S > &  T2,
const Vector3< S > &  T3,
Vector3< S > &  P,
Vector3< S > &  Q 
)
static

Definition at line 398 of file triangle_distance-inl.h.

◆ triDistance() [4/6]

template<typename S >
S fcl::detail::TriangleDistance< S >::triDistance ( const Vector3< S >  T1[3],
const Vector3< S >  T2[3],
const Matrix3< S > &  R,
const Vector3< S > &  Tl,
Vector3< S > &  P,
Vector3< S > &  Q 
)
static

Compute the closest points on two triangles given the relative transform between them, and returns the distance between them T1 and T2 are two triangles If the triangles are disjoint, P and Q give the closet points of T1 and T2 respectively. However, if the triangles overlap, P and Q are basically a random pair of points from the triangles, not coincident points on the intersection of the triangles, as might be expected. The returned P and Q are both in the coordinate of the first triangle's coordinate.

Definition at line 412 of file triangle_distance-inl.h.

◆ triDistance() [5/6]

template<typename S >
S fcl::detail::TriangleDistance< S >::triDistance ( const Vector3< S >  T1[3],
const Vector3< S >  T2[3],
const Transform3< S > &  tf,
Vector3< S > &  P,
Vector3< S > &  Q 
)
static

Definition at line 426 of file triangle_distance-inl.h.

◆ triDistance() [6/6]

template<typename S >
S fcl::detail::TriangleDistance< S >::triDistance ( const Vector3< S >  T1[3],
const Vector3< S >  T2[3],
Vector3< S > &  P,
Vector3< S > &  Q 
)
static

Compute the closest points on two triangles given their absolute coordinate, and returns the distance between them T1 and T2 are two triangles If the triangles are disjoint, P and Q give the closet points of T1 and T2 respectively. However, if the triangles overlap, P and Q are basically a random pair of points from the triangles, not coincident points on the intersection of the triangles, as might be expected.

Definition at line 171 of file triangle_distance-inl.h.


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


fcl
Author(s):
autogenerated on Tue Dec 5 2023 03:40:51