#include <vcg/space/point3.h>
#include <math.h>
Go to the source code of this file.
Namespaces | |
namespace | vcg |
* | |
Defines | |
#define | ADD(dest, v1, v2) dest[0]=v1[0]+v2[0]; dest[1]=v1[1]+v2[1]; dest[2]=v1[2]+v2[2]; |
#define | COMPUTE_INTERVALS_ISECTLINE(VERT0, VERT1, VERT2, VV0, VV1, VV2, D0, D1, D2, D0D1, D0D2, isect0, isect1, isectpoint0, isectpoint1) |
#define | CROSS(dest, v1, v2) |
#define | DOT(v1, v2) (v1[0]*v2[0]+v1[1]*v2[1]+v1[2]*v2[2]) |
#define | DOT(v1, v2) (v1[0]*v2[0]+v1[1]*v2[1]+v1[2]*v2[2]) |
#define | EDGE_AGAINST_TRI_EDGES(V0, V1, U0, U1, U2) |
#define | EDGE_EDGE_TEST(V0, U0, U1) |
#define | FABS(x) (T(fabs(x))) |
#define | MULT(dest, v, factor) dest[0]=factor*v[0]; dest[1]=factor*v[1]; dest[2]=factor*v[2]; |
#define | NEWCOMPUTE_INTERVALS(VV0, VV1, VV2, D0, D1, D2, D0D1, D0D2, A, B, C, X0, X1) |
#define | POINT_IN_TRI(V0, U0, U1, U2) |
#define | SET(dest, src) dest[0]=src[0]; dest[1]=src[1]; dest[2]=src[2]; |
#define | SORT(a, b) |
#define | SORT2(a, b, smallest) |
#define | SUB(dest, v1, v2) |
#define | TRI_TRI_INT_EPSILON 0.000001 |
#define | USE_EPSILON_TEST |
Functions | |
template<class T > | |
int | vcg::compute_intervals_isectline (Point3< T > VERT0, Point3< T > VERT1, Point3< T > VERT2, float VV0, float VV1, float VV2, float D0, float D1, float D2, float D0D1, float D0D2, float *isect0, float *isect1, Point3< T > &isectpoint0, Point3< T > &isectpoint1) |
template<class T > | |
bool | vcg::coplanar_tri_tri (const Point3< T > N, const Point3< T > V0, const Point3< T > V1, const Point3< T > V2, const Point3< T > U0, const Point3< T > U1, const Point3< T > U2) |
template<class T > | |
void | vcg::isect2 (Point3< T > VTX0, Point3< T > VTX1, Point3< T > VTX2, float VV0, float VV1, float VV2, float D0, float D1, float D2, float *isect0, float *isect1, Point3< T > &isectpoint0, Point3< T > &isectpoint1) |
template<class T > | |
bool | vcg::NoDivTriTriIsect (const Point3< T > V0, const Point3< T > V1, const Point3< T > V2, const Point3< T > U0, const Point3< T > U1, const Point3< T > U2) |
template<class T > | |
bool | vcg::tri_tri_intersect_with_isectline (Point3< T > V0, Point3< T > V1, Point3< T > V2, Point3< T > U0, Point3< T > U1, Point3< T > U2, bool &coplanar, Point3< T > &isectpt1, Point3< T > &isectpt2) |