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:
authorAndre Susano Pinto <andresusanopinto@gmail.com>2008-08-13 00:43:10 +0400
committerAndre Susano Pinto <andresusanopinto@gmail.com>2008-08-13 00:43:10 +0400
commitc6de35e55880774812294880f3d908871ff3b7cf (patch)
tree74f1b4bcb6132cc8f68cc2bd2605dbb959611790 /source/blender/makesdna/DNA_modifier_types.h
parent7e7d416f4d4f7bdf4e31f7bf87eabbd9fe26c16d (diff)
*Added documentation mainly at shrinkwrap.c
*removed commented code about the dropped shrinkwrap options *Removed references to "cut plane", "limitMesh".. its now called "auxiliar target" *Added option to shrinkwrap over an selected axis *"Normal projection" mode is now called "projection" since it can now project over "normal, and any combination X, Y, Z"
Diffstat (limited to 'source/blender/makesdna/DNA_modifier_types.h')
-rw-r--r--source/blender/makesdna/DNA_modifier_types.h23
1 files changed, 15 insertions, 8 deletions
diff --git a/source/blender/makesdna/DNA_modifier_types.h b/source/blender/makesdna/DNA_modifier_types.h
index b3d80f2e554..c8db1164dc9 100644
--- a/source/blender/makesdna/DNA_modifier_types.h
+++ b/source/blender/makesdna/DNA_modifier_types.h
@@ -496,28 +496,35 @@ typedef struct ShrinkwrapModifierData {
ModifierData modifier;
struct Object *target; /* shrink target */
- struct Object *cutPlane;/* shrink target */
+ struct Object *auxTarget; /* additional shrink target */
char vgroup_name[32]; /* optional vertexgroup name */
float keptDist; /* distance offset from mesh/projection point */
short shrinkType; /* shrink type projection */
short shrinkOpts; /* shrink options */
+ char projAxis; /* axis to project over */
+ char pad[7];
} ShrinkwrapModifierData;
/* Shrinkwrap->shrinkType */
#define MOD_SHRINKWRAP_NEAREST_SURFACE 0
-#define MOD_SHRINKWRAP_NORMAL 1
+#define MOD_SHRINKWRAP_PROJECT 1
#define MOD_SHRINKWRAP_NEAREST_VERTEX 2
/* Shrinkwrap->shrinkOpts */
-#define MOD_SHRINKWRAP_ALLOW_DEFAULT_NORMAL (1<<0)
-#define MOD_SHRINKWRAP_ALLOW_INVERTED_NORMAL (1<<1)
-/* #define MOD_SHRINKWRAP_REMOVE_UNPROJECTED_FACES (1<<2) / * Currently dropped to make shrinkwrap a deform only modifier */
+#define MOD_SHRINKWRAP_PROJECT_ALLOW_POS_DIR (1<<0) /* allow shrinkwrap to move the vertex in the positive direction of axis */
+#define MOD_SHRINKWRAP_PROJECT_ALLOW_NEG_DIR (1<<1) /* allow shrinkwrap to move the vertex in the negative direction of axis */
-#define MOD_SHRINKWRAP_CULL_TARGET_FRONTFACE (1<<3)
-#define MOD_SHRINKWRAP_CULL_TARGET_BACKFACE (1<<4)
+#define MOD_SHRINKWRAP_CULL_TARGET_FRONTFACE (1<<3) /* ignore vertex moves if a vertex ends projected on a front face of the target */
+#define MOD_SHRINKWRAP_CULL_TARGET_BACKFACE (1<<4) /* ignore vertex moves if a vertex ends projected on a back face of the target */
+
+#define MOD_SHRINKWRAP_KEPT_ABOVE_SURFACE (1<<5) /* distance is measure to the front face of the target */
+
+#define MOD_SHRINKWRAP_PROJECT_OVER_X_AXIS (1<<0)
+#define MOD_SHRINKWRAP_PROJECT_OVER_Y_AXIS (1<<1)
+#define MOD_SHRINKWRAP_PROJECT_OVER_Z_AXIS (1<<2)
+#define MOD_SHRINKWRAP_PROJECT_OVER_NORMAL 0 /* projection over normal is used if no axis is selected */
-#define MOD_SHRINKWRAP_KEPT_ABOVE_SURFACE (1<<5)
typedef struct SimpleDeformModifierData {
ModifierData modifier;