Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'extern/bullet2/patches/convex_hull.patch')
-rw-r--r--extern/bullet2/patches/convex_hull.patch127
1 files changed, 0 insertions, 127 deletions
diff --git a/extern/bullet2/patches/convex_hull.patch b/extern/bullet2/patches/convex_hull.patch
deleted file mode 100644
index 1b2978221fb..00000000000
--- a/extern/bullet2/patches/convex_hull.patch
+++ /dev/null
@@ -1,127 +0,0 @@
-Index: extern/bullet2/src/Bullet-C-Api.h
-===================================================================
---- extern/bullet2/src/Bullet-C-Api.h (revision 51556)
-+++ extern/bullet2/src/Bullet-C-Api.h (working copy)
-@@ -167,6 +167,16 @@ extern "C" {
- // needed for source/blender/blenkernel/intern/collision.c
- double plNearestPoints(float p1[3], float p2[3], float p3[3], float q1[3], float q2[3], float q3[3], float *pa, float *pb, float normal[3]);
-
-+
-+ /* Convex Hull */
-+ PL_DECLARE_HANDLE(plConvexHull);
-+ plConvexHull plConvexHullCompute(float (*coords)[3], int count);
-+ int plConvexHullNumVertices(plConvexHull hull);
-+ int plConvexHullNumFaces(plConvexHull hull);
-+ void plConvexHullGetVertex(plConvexHull hull, int n, float coords[3], int *original_index);
-+ int plConvexHullGetFaceSize(plConvexHull hull, int n);
-+ void plConvexHullGetFaceVertices(plConvexHull hull, int n, int *vertices);
-+
- #ifdef __cplusplus
- }
- #endif
-Index: extern/bullet2/src/BulletDynamics/Dynamics/Bullet-C-API.cpp
-===================================================================
---- extern/bullet2/src/BulletDynamics/Dynamics/Bullet-C-API.cpp (revision 51556)
-+++ extern/bullet2/src/BulletDynamics/Dynamics/Bullet-C-API.cpp (working copy)
-@@ -23,7 +23,7 @@ subject to the following restrictions:
- #include "Bullet-C-Api.h"
- #include "btBulletDynamicsCommon.h"
- #include "LinearMath/btAlignedAllocator.h"
--
-+#include "LinearMath/btConvexHullComputer.h"
-
-
- #include "LinearMath/btVector3.h"
-@@ -403,3 +403,60 @@ double plNearestPoints(float p1[3], float p2[3], float p3[3], float q1[3], float
- return -1.0f;
- }
-
-+// Convex hull
-+plConvexHull plConvexHullCompute(float (*coords)[3], int count)
-+{
-+ btConvexHullComputer *computer = new btConvexHullComputer;
-+ computer->compute(reinterpret_cast< float* >(coords),
-+ sizeof(*coords), count, 0, 0);
-+ return reinterpret_cast<plConvexHull>(computer);
-+}
-+
-+int plConvexHullNumVertices(plConvexHull hull)
-+{
-+ btConvexHullComputer *computer(reinterpret_cast< btConvexHullComputer* >(hull));
-+ return computer->vertices.size();
-+}
-+
-+int plConvexHullNumFaces(plConvexHull hull)
-+{
-+ btConvexHullComputer *computer(reinterpret_cast< btConvexHullComputer* >(hull));
-+ return computer->faces.size();
-+}
-+
-+void plConvexHullGetVertex(plConvexHull hull, int n, float coords[3],
-+ int *original_index)
-+{
-+ btConvexHullComputer *computer(reinterpret_cast< btConvexHullComputer* >(hull));
-+ const btVector3 &v(computer->vertices[n]);
-+ coords[0] = v[0];
-+ coords[1] = v[1];
-+ coords[2] = v[2];
-+ (*original_index) = computer->original_vertex_index[n];
-+}
-+
-+int plConvexHullGetFaceSize(plConvexHull hull, int n)
-+{
-+ btConvexHullComputer *computer(reinterpret_cast< btConvexHullComputer* >(hull));
-+ const btConvexHullComputer::Edge *e_orig, *e;
-+ int count;
-+
-+ for (e_orig = &computer->edges[computer->faces[n]], e = e_orig, count = 0;
-+ count == 0 || e != e_orig;
-+ e = e->getNextEdgeOfFace(), count++);
-+ return count;
-+}
-+
-+void plConvexHullGetFaceVertices(plConvexHull hull, int n, int *vertices)
-+{
-+ btConvexHullComputer *computer(reinterpret_cast< btConvexHullComputer* >(hull));
-+ const btConvexHullComputer::Edge *e_orig, *e;
-+ int count;
-+
-+ for (e_orig = &computer->edges[computer->faces[n]], e = e_orig, count = 0;
-+ count == 0 || e != e_orig;
-+ e = e->getNextEdgeOfFace(), count++)
-+ {
-+ vertices[count] = e->getTargetVertex();
-+ }
-+}
-Index: extern/bullet2/src/LinearMath/btConvexHullComputer.cpp
-===================================================================
---- extern/bullet2/src/LinearMath/btConvexHullComputer.cpp (revision 51556)
-+++ extern/bullet2/src/LinearMath/btConvexHullComputer.cpp (working copy)
-@@ -2661,6 +2661,7 @@ btScalar btConvexHullComputer::compute(const void* coords, bool doubleCoords, in
- }
-
- vertices.resize(0);
-+ original_vertex_index.resize(0);
- edges.resize(0);
- faces.resize(0);
-
-@@ -2671,6 +2672,7 @@ btScalar btConvexHullComputer::compute(const void* coords, bool doubleCoords, in
- {
- btConvexHullInternal::Vertex* v = oldVertices[copied];
- vertices.push_back(hull.getCoordinates(v));
-+ original_vertex_index.push_back(v->point.index);
- btConvexHullInternal::Edge* firstEdge = v->edges;
- if (firstEdge)
- {
-Index: extern/bullet2/src/LinearMath/btConvexHullComputer.h
-===================================================================
---- extern/bullet2/src/LinearMath/btConvexHullComputer.h (revision 51556)
-+++ extern/bullet2/src/LinearMath/btConvexHullComputer.h (working copy)
-@@ -67,6 +67,7 @@ class btConvexHullComputer
-
- // Vertices of the output hull
- btAlignedObjectArray<btVector3> vertices;
-+ btAlignedObjectArray<int> original_vertex_index;
-
- // Edges of the output hull
- btAlignedObjectArray<Edge> edges;