From fb9546746efe63a2e6c2806ad12978a4401002d1 Mon Sep 17 00:00:00 2001 From: Campbell Barton Date: Mon, 22 Mar 2010 00:22:52 +0000 Subject: Screw Modifier (old patch was called Lathe) didnt commit this patch because curves are generally better to create a shape to lathe however now that curves can have modifiers applied to them I think its good to have this. Added options to offset the lathe so it can work like the screw tool as well. - optional object for axis which also controls the center point. - screw offset so rather then just lathing this can work more like the screw tool. - screw optionally using the object distance along the axis. - iterations so the screw can be applied multiple times. tested to work well with curves. --- source/blender/makesdna/DNA_modifier_types.h | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) (limited to 'source/blender/makesdna') diff --git a/source/blender/makesdna/DNA_modifier_types.h b/source/blender/makesdna/DNA_modifier_types.h index 5d321fe49c2..dbcf5849616 100644 --- a/source/blender/makesdna/DNA_modifier_types.h +++ b/source/blender/makesdna/DNA_modifier_types.h @@ -65,6 +65,7 @@ typedef enum ModifierType { eModifierType_Smoke, eModifierType_ShapeKey, eModifierType_Solidify, + eModifierType_Screw, NUM_MODIFIER_TYPES } ModifierType; @@ -692,4 +693,22 @@ typedef struct SolidifyModifierData { #define MOD_SOLIDIFY_EVEN (1<<1) #define MOD_SOLIDIFY_NORMAL_CALC (1<<2) +typedef struct ScrewModifierData { + ModifierData modifier; + struct Object *ob_axis; + int steps; + int render_steps; + int iter; + float screw_ofs; + float angle; + short axis; + short flag; +} ScrewModifierData; + +#define MOD_SCREW_NORMAL_FLIP (1<<0) +#define MOD_SCREW_NORMAL_CALC (1<<1) +#define MOD_SCREW_OBJECT_OFFSET (1<<2) +// #define MOD_SCREW_OBJECT_ANGLE (1<<4) + + #endif -- cgit v1.2.3