diff options
author | Sergey Sharybin <sergey.vfx@gmail.com> | 2011-01-14 19:57:53 +0300 |
---|---|---|
committer | Sergey Sharybin <sergey.vfx@gmail.com> | 2011-01-14 19:57:53 +0300 |
commit | 439140d6aedba79045eca52ba7a905d9e4a34d8a (patch) | |
tree | d41bf670f728fde0f51fd304566b20986ddec1a8 /source/blender/editors/interface | |
parent | 9d8d25cc34b0ff4d393519095fda4dedd1f7f746 (diff) |
Todo item #19816: Wave modifier does not affect Curve Paths
Added new option for applyong modifiers on splines' points. This moves
tesselation point and path would be affected by modifiers which are applied on
splines' points.
Diffstat (limited to 'source/blender/editors/interface')
-rw-r--r-- | source/blender/editors/interface/interface_templates.c | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/source/blender/editors/interface/interface_templates.c b/source/blender/editors/interface/interface_templates.c index e96740d6353..14d9773ef14 100644 --- a/source/blender/editors/interface/interface_templates.c +++ b/source/blender/editors/interface/interface_templates.c @@ -44,6 +44,7 @@ #include "BKE_material.h" #include "BKE_texture.h" #include "BKE_report.h" +#include "BKE_displist.h" #include "ED_screen.h" #include "ED_render.h" @@ -738,6 +739,23 @@ static uiLayout *draw_modifier(uiLayout *layout, Scene *scene, Object *ob, Modif uiButSetFlag(but, UI_BUT_DISABLED); uiButSetFunc(but, modifiers_setOnCage, ob, md); } + + /* tesselation point for curve-typed objects */ + if (ELEM3(ob->type, OB_CURVE, OB_SURF, OB_FONT)) { + ModifierTypeInfo *mti = modifierType_getInfo(md->type); + + /* some modifiers could work with pre-tesselated curves only */ + if (ELEM3(md->type, eModifierType_Hook, eModifierType_Softbody, eModifierType_MeshDeform)) { + /* add disabled pre-tesselated button, so users could have + message for this modifiers */ + but = uiDefIconButBitI(block, TOG, eModifierMode_ApplyOnSpline, 0, ICON_SURFACE_DATA, 0, 0, 16, 20, &md->mode, 0.0, 0.0, 0.0, 0.0, "This modifier could be applied on splines' points only"); + uiButSetFlag(but, UI_BUT_DISABLED); + } else if (mti->type != eModifierTypeType_Constructive) { + /* constructive modifiers tesselates curve before applying */ + uiItemR(row, &ptr, "use_apply_on_spline", 0, "", ICON_NULL); + } + } + uiBlockEndAlign(block); /* Up/Down + Delete ........................... */ |