Namespaces | Functions

OpenTissue::gjk::obsolete Namespace Reference

Namespaces

namespace  detail

Functions

template<typename convex_shape_type1 , typename convex_shape_type2 , typename vector3_type >
bool is_intersecting (convex_shape_type1 &A, convex_shape_type2 &B, vector3_type &g)
template<typename convex_shape_type1 , typename convex_shape_type2 , typename vector3_type >
bool get_common_point (convex_shape_type1 &A, convex_shape_type2 &B, vector3_type &g, vector3_type &pa, vector3_type &pb)
template<typename convex_shape_type1 , typename convex_shape_type2 , typename vector3_type >
void get_closest_points (convex_shape_type1 &A, convex_shape_type2 &B, vector3_type &pa, vector3_type &pb)

Function Documentation

template<typename convex_shape_type1 , typename convex_shape_type2 , typename vector3_type >
void OpenTissue::gjk::obsolete::get_closest_points ( convex_shape_type1 &  A,
convex_shape_type2 &  B,
vector3_type pa,
vector3_type pb 
)

Closest Point Queury. This is the GJK version as Gino van den Bergen has presented it.

Parameters:
A A pointer to one convex volume
B A pointer to another convex volume
pa A pointer to a vector, which upon return contains a closest point on A to B
pb A pointer to a vector, which upon return contains a closest point on B to A
template<typename convex_shape_type1 , typename convex_shape_type2 , typename vector3_type >
bool OpenTissue::gjk::obsolete::get_common_point ( convex_shape_type1 &  A,
convex_shape_type2 &  B,
vector3_type g,
vector3_type pa,
vector3_type pb 
)

Common Point Queury. In case of intersection a common point between the two specified convex volumes is computed.

Note both pa and pb will contain the same value, this is because we assume that A and B are represented in the same coordinate frame. GJK could take affine transformations of A and B into account. Meaning that A and B could be given in their local frame, but we have no need for this!!!

Parameters:
A A pointer to one convex volume
B A pointer to another convex volume
g A pointer to a vector, which contains an inital guess for a separation axe, between A and B. Upon return the vector will contain the separation axe, computed by GJK.
pa A pointer to a vector, which upon return contains a closest point on A to B
pb A pointer to a vector, which upon return contains a closest point on B to A
Returns:
If A and B are intersecting then the return value is true otherwise it is false.
template<typename convex_shape_type1 , typename convex_shape_type2 , typename vector3_type >
bool OpenTissue::gjk::obsolete::is_intersecting ( convex_shape_type1 &  A,
convex_shape_type2 &  B,
vector3_type g 
)

Intersection Query. This is the ISA-GJK version. Note if coherence should be exploited one should surply the method with the separation axe computed from the previous iteration. The initial value could be any arbitary vector, we sugest that you use the difference between the centers of A and B.

Parameters:
A A pointer to one convex volume
B A pointer to another convex volume
g A pointer to a vector, which contains an inital guess for a separation axe, between A and B. Upon return the vector will contain the separation axe, computed by GJK.
Returns:
If A and B are intersecting then the return value is true otherwise it is false.