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 'source/blender')
-rw-r--r--source/blender/blenkernel/BKE_mesh.h10
-rw-r--r--source/blender/blenkernel/CMakeLists.txt1
-rw-r--r--source/blender/blenkernel/intern/mesh_validate.c (renamed from source/blender/editors/mesh/mesh_validate.c)15
-rw-r--r--source/blender/editors/include/ED_mesh.h4
-rw-r--r--source/blender/editors/mesh/CMakeLists.txt1
-rw-r--r--source/blender/makesrna/intern/rna_mesh_api.c7
6 files changed, 25 insertions, 13 deletions
diff --git a/source/blender/blenkernel/BKE_mesh.h b/source/blender/blenkernel/BKE_mesh.h
index 398e1d8a7f5..85b5ec96275 100644
--- a/source/blender/blenkernel/BKE_mesh.h
+++ b/source/blender/blenkernel/BKE_mesh.h
@@ -47,6 +47,8 @@ struct Object;
struct MTFace;
struct VecNor;
struct CustomData;
+struct DerivedMesh;
+struct Scene;
#ifdef __cplusplus
extern "C" {
@@ -147,9 +149,13 @@ int mesh_center_median(struct Mesh *me, float cent[3]);
int mesh_center_bounds(struct Mesh *me, float cent[3]);
void mesh_translate(struct Mesh *me, float offset[3], int do_keys);
+/* mesh_validate.c */
+void BKE_mesh_validate_arrays(struct MVert *mverts, int totvert, struct MEdge *medges, int totedge, struct MFace *mfaces, int totface);
+void BKE_mesh_validate(struct Mesh *me);
+void BKE_mesh_validate_dm(struct DerivedMesh *dm);
+
#ifdef __cplusplus
}
#endif
-#endif
-
+#endif /* BKE_MESH_H */
diff --git a/source/blender/blenkernel/CMakeLists.txt b/source/blender/blenkernel/CMakeLists.txt
index 63214f6ee11..5f5b413ecd8 100644
--- a/source/blender/blenkernel/CMakeLists.txt
+++ b/source/blender/blenkernel/CMakeLists.txt
@@ -105,6 +105,7 @@ set(SRC
intern/material.c
intern/mball.c
intern/mesh.c
+ intern/mesh_validate.c
intern/modifier.c
intern/multires.c
intern/nla.c
diff --git a/source/blender/editors/mesh/mesh_validate.c b/source/blender/blenkernel/intern/mesh_validate.c
index 667287e6a43..4cef8c5560e 100644
--- a/source/blender/editors/mesh/mesh_validate.c
+++ b/source/blender/blenkernel/intern/mesh_validate.c
@@ -34,6 +34,8 @@
#include "BLI_utildefines.h"
#include "BLI_edgehash.h"
+#include "BKE_DerivedMesh.h"
+
#include "MEM_guardedalloc.h"
#include "ED_mesh.h"
@@ -71,7 +73,7 @@ static int search_face_cmp(const void *v1, const void *v2)
return 0;
}
-void ED_mesh_validate_arrays(MVert *UNUSED(mverts), int totvert, MEdge *medges, int totedge, MFace *mfaces, int totface)
+void BKE_mesh_validate_arrays(MVert *UNUSED(mverts), int totvert, MEdge *medges, int totedge, MFace *mfaces, int totface)
{
// MVert *mv;
MEdge *med;
@@ -242,11 +244,16 @@ void ED_mesh_validate_arrays(MVert *UNUSED(mverts), int totvert, MEdge *medges,
BLI_edgehash_free(edge_hash, NULL);
MEM_freeN(search_faces);
- printf("ED_mesh_validate: finished\n\n");
+ printf("BKE_mesh_validate: finished\n\n");
}
-void ED_mesh_validate(Mesh *me)
+void BKE_mesh_validate(Mesh *me)
{
printf("MESH: %s\n", me->id.name+2);
- ED_mesh_validate_arrays(me->mvert, me->totvert, me->medge, me->totedge, me->mface, me->totface);
+ BKE_mesh_validate_arrays(me->mvert, me->totvert, me->medge, me->totedge, me->mface, me->totface);
+}
+
+void BKE_mesh_validate_dm(DerivedMesh *dm)
+{
+ BKE_mesh_validate_arrays(dm->getVertArray(dm), dm->getNumVerts(dm), dm->getEdgeArray(dm), dm->getNumEdges(dm), dm->getFaceArray(dm), dm->getNumFaces(dm));
}
diff --git a/source/blender/editors/include/ED_mesh.h b/source/blender/editors/include/ED_mesh.h
index 451bbe53bc9..057e5d3bf88 100644
--- a/source/blender/editors/include/ED_mesh.h
+++ b/source/blender/editors/include/ED_mesh.h
@@ -82,10 +82,6 @@ struct rcti;
#define B_FRACTAL 0x2000
#define B_SPHERE 0x4000
-/* mesh_validate.c */
-void ED_mesh_validate_arrays(struct MVert *mverts, int totvert, struct MEdge *medges, int totedge, struct MFace *mfaces, int totface);
-void ED_mesh_validate(struct Mesh *me);
-
/* meshtools.c */
intptr_t mesh_octree_table(struct Object *ob, struct EditMesh *em, float *co, char mode);
diff --git a/source/blender/editors/mesh/CMakeLists.txt b/source/blender/editors/mesh/CMakeLists.txt
index eabc0a599ff..82d1c7430fc 100644
--- a/source/blender/editors/mesh/CMakeLists.txt
+++ b/source/blender/editors/mesh/CMakeLists.txt
@@ -42,7 +42,6 @@ set(SRC
loopcut.c
mesh_data.c
mesh_ops.c
- mesh_validate.c
meshtools.c
mesh_intern.h
diff --git a/source/blender/makesrna/intern/rna_mesh_api.c b/source/blender/makesrna/intern/rna_mesh_api.c
index 82004f8c0b3..e8de1cfe5b4 100644
--- a/source/blender/makesrna/intern/rna_mesh_api.c
+++ b/source/blender/makesrna/intern/rna_mesh_api.c
@@ -33,6 +33,7 @@
#include "BLO_sys_types.h"
+#include "BKE_mesh.h"
#include "ED_mesh.h"
#ifdef RNA_RUNTIME
@@ -57,8 +58,10 @@ void RNA_api_mesh(StructRNA *srna)
RNA_def_boolean(func, "calc_edges", 0, "Calculate Edges", "Force recalculation of edges.");
RNA_def_function_flag(func, FUNC_USE_CONTEXT);
- /* Linking errors! */
- /* func= RNA_def_function(srna, "validate", "ED_mesh_validate"); */
+ /*
+ func= RNA_def_function(srna, "validate", "BKE_mesh_validate");
+ RNA_def_function_ui_description(func, "validate geometry.");
+ */
}
#endif