[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [56541] trunk/blender/source/blender/ blenkernel: code cleanup: remove unused 'dm' arg from BVHTreeFromMesh.

Campbell Barton ideasman42 at gmail.com
Wed May 8 14:53:34 CEST 2013


Revision: 56541
          http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=56541
Author:   campbellbarton
Date:     2013-05-08 12:53:34 +0000 (Wed, 08 May 2013)
Log Message:
-----------
code cleanup: remove unused 'dm' arg from BVHTreeFromMesh.

Modified Paths:
--------------
    trunk/blender/source/blender/blenkernel/BKE_bvhutils.h
    trunk/blender/source/blender/blenkernel/intern/bvhutils.c

Modified: trunk/blender/source/blender/blenkernel/BKE_bvhutils.h
===================================================================
--- trunk/blender/source/blender/blenkernel/BKE_bvhutils.h	2013-05-08 12:53:14 UTC (rev 56540)
+++ trunk/blender/source/blender/blenkernel/BKE_bvhutils.h	2013-05-08 12:53:34 UTC (rev 56541)
@@ -51,9 +51,6 @@
 	BVHTree_NearestPointCallback nearest_callback;
 	BVHTree_RayCastCallback raycast_callback;
 
-	/* Mesh represented on this BVHTree */
-	struct DerivedMesh *mesh;
-
 	/* Vertex array, so that callbacks have instante access to data */
 	struct MVert *vert;
 	struct MEdge *edge;     /* only used for BVHTreeFromMeshEdges */
@@ -63,8 +60,8 @@
 	float sphere_radius;
 
 	/* Private data */
-	int cached;
 	void *em_evil;  /* var only for snapping */
+	bool cached;
 
 } BVHTreeFromMesh;
 

Modified: trunk/blender/source/blender/blenkernel/intern/bvhutils.c
===================================================================
--- trunk/blender/source/blender/blenkernel/intern/bvhutils.c	2013-05-08 12:53:14 UTC (rev 56540)
+++ trunk/blender/source/blender/blenkernel/intern/bvhutils.c	2013-05-08 12:53:34 UTC (rev 56541)
@@ -518,15 +518,15 @@
  * BVH builders
  */
 /* Builds a bvh tree.. where nodes are the vertexs of the given mesh */
-BVHTree *bvhtree_from_mesh_verts(BVHTreeFromMesh *data, DerivedMesh *mesh, float epsilon, int tree_type, int axis)
+BVHTree *bvhtree_from_mesh_verts(BVHTreeFromMesh *data, DerivedMesh *dm, float epsilon, int tree_type, int axis)
 {
-	BVHTree *tree = bvhcache_find(&mesh->bvhCache, BVHTREE_FROM_VERTICES);
+	BVHTree *tree = bvhcache_find(&dm->bvhCache, BVHTREE_FROM_VERTICES);
 
 	/* Not in cache */
 	if (tree == NULL) {
 		int i;
-		int numVerts = mesh->getNumVerts(mesh);
-		MVert *vert = mesh->getVertDataArray(mesh, CD_MVERT);
+		int numVerts = dm->getNumVerts(dm);
+		MVert *vert = dm->getVertDataArray(dm, CD_MVERT);
 
 		if (vert != NULL) {
 			tree = BLI_bvhtree_new(numVerts, epsilon, tree_type, axis);
@@ -540,7 +540,7 @@
 
 				/* Save on cache for later use */
 //				printf("BVHTree built and saved on cache\n");
-				bvhcache_insert(&mesh->bvhCache, tree, BVHTREE_FROM_VERTICES);
+				bvhcache_insert(&dm->bvhCache, tree, BVHTREE_FROM_VERTICES);
 			}
 		}
 	}
@@ -554,16 +554,15 @@
 	data->tree = tree;
 
 	if (data->tree) {
-		data->cached = TRUE;
+		data->cached = true;
 
 		/* a NULL nearest callback works fine
 		 * remeber the min distance to point is the same as the min distance to BV of point */
 		data->nearest_callback = NULL;
 		data->raycast_callback = NULL;
 
-		data->mesh = mesh;
-		data->vert = mesh->getVertDataArray(mesh, CD_MVERT);
-		data->face = mesh->getTessFaceDataArray(mesh, CD_MFACE);
+		data->vert = dm->getVertDataArray(dm, CD_MVERT);
+		data->face = dm->getTessFaceDataArray(dm, CD_MFACE);
 
 		data->sphere_radius = epsilon;
 	}
@@ -571,10 +570,10 @@
 	return data->tree;
 }
 
-/* Builds a bvh tree.. where nodes are the faces of the given mesh. */
-BVHTree *bvhtree_from_mesh_faces(BVHTreeFromMesh *data, DerivedMesh *mesh, float epsilon, int tree_type, int axis)
+/* Builds a bvh tree.. where nodes are the faces of the given dm. */
+BVHTree *bvhtree_from_mesh_faces(BVHTreeFromMesh *data, DerivedMesh *dm, float epsilon, int tree_type, int axis)
 {
-	BVHTree *tree = bvhcache_find(&mesh->bvhCache, BVHTREE_FROM_FACES);
+	BVHTree *tree = bvhcache_find(&dm->bvhCache, BVHTREE_FROM_FACES);
 	BMEditMesh *em = data->em_evil;
 
 	/* Not in cache */
@@ -591,8 +590,8 @@
 			numFaces = em->tottri;
 		}
 		else {
-			numFaces = mesh->getNumTessFaces(mesh);
-			BLI_assert(!(numFaces == 0 && mesh->getNumPolys(mesh) != 0));
+			numFaces = dm->getNumTessFaces(dm);
+			BLI_assert(!(numFaces == 0 && dm->getNumPolys(dm) != 0));
 		}
 
 		if (numFaces != 0) {
@@ -663,8 +662,8 @@
 					}
 				}
 				else {
-					MVert *vert = mesh->getVertDataArray(mesh, CD_MVERT);
-					MFace *face = mesh->getTessFaceDataArray(mesh, CD_MFACE);
+					MVert *vert = dm->getVertDataArray(dm, CD_MVERT);
+					MFace *face = dm->getTessFaceDataArray(dm, CD_MFACE);
 
 					if (vert != NULL && face != NULL) {
 						for (i = 0; i < numFaces; i++) {
@@ -683,7 +682,7 @@
 
 				/* Save on cache for later use */
 //				printf("BVHTree built and saved on cache\n");
-				bvhcache_insert(&mesh->bvhCache, tree, BVHTREE_FROM_FACES);
+				bvhcache_insert(&dm->bvhCache, tree, BVHTREE_FROM_FACES);
 			}
 		}
 	}
@@ -698,7 +697,7 @@
 	data->em_evil = em;
 
 	if (data->tree) {
-		data->cached = TRUE;
+		data->cached = true;
 
 		if (em) {
 			data->nearest_callback = editmesh_faces_nearest_point;
@@ -708,9 +707,8 @@
 			data->nearest_callback = mesh_faces_nearest_point;
 			data->raycast_callback = mesh_faces_spherecast;
 
-			data->mesh = mesh;
-			data->vert = mesh->getVertDataArray(mesh, CD_MVERT);
-			data->face = mesh->getTessFaceDataArray(mesh, CD_MFACE);
+			data->vert = dm->getVertDataArray(dm, CD_MVERT);
+			data->face = dm->getTessFaceDataArray(dm, CD_MFACE);
 		}
 
 		data->sphere_radius = epsilon;
@@ -719,17 +717,17 @@
 
 }
 
-/* Builds a bvh tree.. where nodes are the faces of the given mesh. */
-BVHTree *bvhtree_from_mesh_edges(BVHTreeFromMesh *data, DerivedMesh *mesh, float epsilon, int tree_type, int axis)
+/* Builds a bvh tree.. where nodes are the faces of the given dm. */
+BVHTree *bvhtree_from_mesh_edges(BVHTreeFromMesh *data, DerivedMesh *dm, float epsilon, int tree_type, int axis)
 {
-	BVHTree *tree = bvhcache_find(&mesh->bvhCache, BVHTREE_FROM_EDGES);
+	BVHTree *tree = bvhcache_find(&dm->bvhCache, BVHTREE_FROM_EDGES);
 
 	/* Not in cache */
 	if (tree == NULL) {
 		int i;
-		int numEdges = mesh->getNumEdges(mesh);
-		MVert *vert = mesh->getVertDataArray(mesh, CD_MVERT);
-		MEdge *edge = mesh->getEdgeDataArray(mesh, CD_MEDGE);
+		int numEdges = dm->getNumEdges(dm);
+		MVert *vert = dm->getVertDataArray(dm, CD_MVERT);
+		MEdge *edge = dm->getEdgeDataArray(dm, CD_MEDGE);
 
 		if (vert != NULL && edge != NULL) {
 			/* Create a bvh-tree of the given target */
@@ -746,7 +744,7 @@
 
 				/* Save on cache for later use */
 //				printf("BVHTree built and saved on cache\n");
-				bvhcache_insert(&mesh->bvhCache, tree, BVHTREE_FROM_EDGES);
+				bvhcache_insert(&dm->bvhCache, tree, BVHTREE_FROM_EDGES);
 			}
 		}
 	}
@@ -760,14 +758,13 @@
 	data->tree = tree;
 
 	if (data->tree) {
-		data->cached = TRUE;
+		data->cached = true;
 
 		data->nearest_callback = mesh_edges_nearest_point;
 		data->raycast_callback = NULL;
 
-		data->mesh = mesh;
-		data->vert = mesh->getVertDataArray(mesh, CD_MVERT);
-		data->edge = mesh->getEdgeDataArray(mesh, CD_MEDGE);
+		data->vert = dm->getVertDataArray(dm, CD_MVERT);
+		data->edge = dm->getEdgeDataArray(dm, CD_MEDGE);
 
 		data->sphere_radius = epsilon;
 	}




More information about the Bf-blender-cvs mailing list