![]() |
Blender V2.61 - r43446
|
#include <string.h>#include "btConvexHull.h"#include "btAlignedObjectArray.h"#include "btMinMax.h"#include "btVector3.h"Go to the source code of this file.
Classes | |
| class | int3 |
| class | VertFlag |
| class | EdgeFlag |
| class | PlaneFlag |
| class | Coplanar |
| class | btHullTriangle |
Defines | |
| #define | COPLANAR (0) |
| #define | UNDER (1) |
| #define | OVER (2) |
| #define | SPLIT (OVER|UNDER) |
| #define | PAPERWIDTH (btScalar(0.001)) |
| #define | EPSILON btScalar(0.000001) |
Typedefs | |
| typedef ConvexH::HalfEdge | HalfEdge |
Functions | |
| template<class T > | |
| void | Swap (T &a, T &b) |
| btPlane | PlaneFlip (const btPlane &plane) |
| int | operator== (const btPlane &a, const btPlane &b) |
| int | coplanar (const btPlane &a, const btPlane &b) |
| btVector3 | PlaneLineIntersection (const btPlane &plane, const btVector3 &p0, const btVector3 &p1) |
| btVector3 | PlaneProject (const btPlane &plane, const btVector3 &point) |
| btVector3 | ThreePlaneIntersection (const btPlane &p0, const btPlane &p1, const btPlane &p2) |
| btScalar | DistanceBetweenLines (const btVector3 &ustart, const btVector3 &udir, const btVector3 &vstart, const btVector3 &vdir, btVector3 *upoint=NULL, btVector3 *vpoint=NULL) |
| btVector3 | TriNormal (const btVector3 &v0, const btVector3 &v1, const btVector3 &v2) |
| btVector3 | NormalOf (const btVector3 *vert, const int n) |
| int | PlaneTest (const btPlane &p, const btVector3 &v) |
| int | SplitTest (ConvexH &convex, const btPlane &plane) |
| template<class T > | |
| int | maxdirfiltered (const T *p, int count, const T &dir, btAlignedObjectArray< int > &allow) |
| btVector3 | orth (const btVector3 &v) |
| template<class T > | |
| int | maxdirsterid (const T *p, int count, const T &dir, btAlignedObjectArray< int > &allow) |
| int | operator== (const int3 &a, const int3 &b) |
| int | above (btVector3 *vertices, const int3 &t, const btVector3 &p, btScalar epsilon) |
| int | hasedge (const int3 &t, int a, int b) |
| int | hasvert (const int3 &t, int v) |
| int | shareedge (const int3 &a, const int3 &b) |
| void | ReleaseHull (PHullResult &result) |
| static void | addPoint (unsigned int &vcount, btVector3 *p, btScalar x, btScalar y, btScalar z) |
| btScalar | GetDist (btScalar px, btScalar py, btScalar pz, const btScalar *p2) |
Variables | |
| btScalar | planetestepsilon = PAPERWIDTH |
| #define COPLANAR (0) |
Definition at line 151 of file btConvexHull.cpp.
Referenced by PlaneTest().
| #define EPSILON btScalar(0.000001) |
| #define OVER (2) |
Definition at line 153 of file btConvexHull.cpp.
Referenced by PlaneTest().
| #define PAPERWIDTH (btScalar(0.001)) |
Definition at line 155 of file btConvexHull.cpp.
| #define SPLIT (OVER|UNDER) |
Definition at line 154 of file btConvexHull.cpp.
| #define UNDER (1) |
Definition at line 152 of file btConvexHull.cpp.
Referenced by PlaneTest().
| typedef ConvexH::HalfEdge HalfEdge |
Definition at line 161 of file btConvexHull.cpp.
Definition at line 313 of file btConvexHull.cpp.
References btDot(), and TriNormal().
| static void addPoint | ( | unsigned int & | vcount, |
| btVector3 * | p, | ||
| btScalar | x, | ||
| btScalar | y, | ||
| btScalar | z | ||
| ) | [static] |
Definition at line 839 of file btConvexHull.cpp.
Referenced by ATTRIBUTE_ALIGNED16().
Definition at line 52 of file btConvexHull.cpp.
References PlaneFlip().
| btScalar DistanceBetweenLines | ( | const btVector3 & | ustart, |
| const btVector3 & | udir, | ||
| const btVector3 & | vstart, | ||
| const btVector3 & | vdir, | ||
| btVector3 * | upoint = NULL, |
||
| btVector3 * | vpoint = NULL |
||
| ) |
Definition at line 120 of file btConvexHull.cpp.
References btCross(), btDot(), btPlane::dist, fabs(), btPlane::normal, and PlaneLineIntersection().
Definition at line 850 of file btConvexHull.cpp.
| int hasedge | ( | const int3 & | t, |
| int | a, | ||
| int | b | ||
| ) |
| int hasvert | ( | const int3 & | t, |
| int | v | ||
| ) |
Definition at line 329 of file btConvexHull.cpp.
| int maxdirfiltered | ( | const T * | p, |
| int | count, | ||
| const T & | dir, | ||
| btAlignedObjectArray< int > & | allow | ||
| ) |
Definition at line 224 of file btConvexHull.cpp.
References btAssert, btDot(), and i.
Referenced by maxdirsterid().
| int maxdirsterid | ( | const T * | p, |
| int | count, | ||
| const T & | dir, | ||
| btAlignedObjectArray< int > & | allow | ||
| ) |
Definition at line 253 of file btConvexHull.cpp.
References btAssert, btCos(), btCross(), btSin(), maxdirfiltered(), orth(), SIMD_RADS_PER_DEG, and T.
| btVector3 NormalOf | ( | const btVector3 * | vert, |
| const int | n | ||
| ) |
Definition at line 51 of file btConvexHull.cpp.
References btPlane::dist, and btPlane::normal.
Definition at line 302 of file btConvexHull.cpp.
References i.
| btVector3 orth | ( | const btVector3 & | v | ) |
Definition at line 239 of file btConvexHull.cpp.
References btCross().
Referenced by maxdirsterid(), project_paint_view_clip(), setwinmatrixview3d(), stretchto_evaluate(), and texture_paint_image_from_view_exec().
Definition at line 50 of file btConvexHull.cpp.
References btPlane::dist, and btPlane::normal.
Referenced by coplanar().
| btVector3 PlaneLineIntersection | ( | const btPlane & | plane, |
| const btVector3 & | p0, | ||
| const btVector3 & | p1 | ||
| ) |
Definition at line 94 of file btConvexHull.cpp.
References btDot(), btPlane::dist, and btPlane::normal.
Referenced by DistanceBetweenLines().
| btVector3 PlaneProject | ( | const btPlane & | plane, |
| const btVector3 & | point | ||
| ) |
Definition at line 104 of file btConvexHull.cpp.
References btDot(), btPlane::dist, and btPlane::normal.
| int PlaneTest | ( | const btPlane & | p, |
| const btVector3 & | v | ||
| ) |
Definition at line 172 of file btConvexHull.cpp.
References btDot(), COPLANAR, btPlane::dist, btPlane::normal, OVER, planetestepsilon, and UNDER.
Referenced by SplitTest().
| void ReleaseHull | ( | PHullResult & | result | ) |
Definition at line 673 of file btConvexHull.cpp.
References btAlignedObjectArray< T >::clear(), PHullResult::m_Indices, PHullResult::mIndexCount, PHullResult::mVcount, PHullResult::mVertices, and btAlignedObjectArray< T >::size().
Referenced by HullLibrary::CreateConvexHull().
Definition at line 334 of file btConvexHull.cpp.
Definition at line 179 of file btConvexHull.cpp.
References i, PlaneTest(), btAlignedObjectArray< T >::size(), and ConvexH::vertices.
| void Swap | ( | T & | a, |
| T & | b | ||
| ) |
Definition at line 26 of file btConvexHull.cpp.
References T.
Definition at line 61 of file btConvexHull.cpp.
References btAssert, btFabs(), btPlane::dist, and btPlane::normal.
| btVector3 TriNormal | ( | const btVector3 & | v0, |
| const btVector3 & | v1, | ||
| const btVector3 & | v2 | ||
| ) |
| btScalar planetestepsilon = PAPERWIDTH |
Definition at line 157 of file btConvexHull.cpp.
Referenced by PlaneTest().