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:
authorTon Roosendaal <ton@blender.org>2005-10-22 18:05:25 +0400
committerTon Roosendaal <ton@blender.org>2005-10-22 18:05:25 +0400
commit5e8131309e43c5638548d622c1df806ca9e63c4d (patch)
treed74ec7f5b40bb3237c239dac8daec97e50992d69 /source/blender/include/BIF_meshtools.h
parented7fb486a13e42f4ae095ee09d6b89769f3570e0 (diff)
New: X-axis mirror weightpainting.
- Set the button in Paint Panel, Edit buttons context - It assumes the mesh to be near-perfectly mirrored. Current threshold is set to 0.0001 (maximum difference allowed). In order to evaluate proper mirroring, a new option will be added in Mesh editmode later. - When the flipped group doesn't exist yet, it creates the group - Of course this doesn't work for mirror modifier! New: Select/activate flipped bone or vertex group - Press SHIFT+F in PoseMode or WeightPaint mode to get the flipped bone. Is especially to see while painting if the mirror copying works OK. New: "Apply Envelope to VertexGroup" uses X-mirror option too. Todo; check on mirror vertex painting, and mirror Mesh editmode.... The implementation is based on a 8x8x8 Octree, where vertex locations are stored. Vertices on the threshold boundary of an Octree node are filled in the neighbour nodes as well, ensuring that the lookup works with threshold. The current size of the Octree gives good speedup, even for 128k vertices it only needs 256 lookup cycles per checked vertex. Same code could be used for the bevel tool for example. src/meshtools.c: int mesh_octree_table(Object *ob, float *co, char mode) - mode 's' or 'e' is "start octree" or "end octree" - mode 'u' is "use", it then returns an index nr of the found vertex. (return -1 if not found)
Diffstat (limited to 'source/blender/include/BIF_meshtools.h')
-rw-r--r--source/blender/include/BIF_meshtools.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/source/blender/include/BIF_meshtools.h b/source/blender/include/BIF_meshtools.h
index d12087bc309..b5f5a91c50c 100644
--- a/source/blender/include/BIF_meshtools.h
+++ b/source/blender/include/BIF_meshtools.h
@@ -33,6 +33,8 @@
#ifndef BIF_MESHTOOLS_H
#define BIF_MESHTOOLS_H
+struct Object;
+
extern void join_mesh(void);
extern void fasterdraw(void);
@@ -40,6 +42,8 @@ extern void slowerdraw(void);
extern void sort_faces(void);
+extern int mesh_octree_table(struct Object *ob, float *co, char mode);
+extern int mesh_get_x_mirror_vert(struct Object *ob, int index);
#endif