diff options
author | Nicholas Bishop <nicholasbishop@gmail.com> | 2009-02-07 06:21:28 +0300 |
---|---|---|
committer | Nicholas Bishop <nicholasbishop@gmail.com> | 2009-02-07 06:21:28 +0300 |
commit | 86f200a510a199cd028ea4dc55071cff6e087788 (patch) | |
tree | b6cd20fb2fd8695c1159f9d3fb0ada89040ef8ab /source/blender/blenkernel | |
parent | 591ab657d609821b891303f638f9a482a8370640 (diff) |
Started converting over the sculpt header menu to the new system. Added operator and menu items for brush curve presets.
Diffstat (limited to 'source/blender/blenkernel')
-rw-r--r-- | source/blender/blenkernel/intern/brush.c | 32 |
1 files changed, 27 insertions, 5 deletions
diff --git a/source/blender/blenkernel/intern/brush.c b/source/blender/blenkernel/intern/brush.c index c0882451f6c..08a2b1dcecb 100644 --- a/source/blender/blenkernel/intern/brush.c +++ b/source/blender/blenkernel/intern/brush.c @@ -242,10 +242,18 @@ void brush_curve_preset(Brush *b, BrushCurvePreset preset) if(cm->curve) MEM_freeN(cm->curve); - if(preset == BRUSH_PRESET_SHARP) { - cm->curve= MEM_callocN(3*sizeof(CurveMapPoint), "curve points"); - cm->flag &= ~CUMA_EXTEND_EXTRAPOLATE; + if(preset == BRUSH_PRESET_SHARP) cm->totpoint= 3; + if(preset == BRUSH_PRESET_SMOOTH) + cm->totpoint= 6; + if(preset == BRUSH_PRESET_MAX) + cm->totpoint= 2; + + + cm->curve= MEM_callocN(cm->totpoint*sizeof(CurveMapPoint), "curve points"); + cm->flag &= ~CUMA_EXTEND_EXTRAPOLATE; + + if(preset == BRUSH_PRESET_SHARP) { cm->curve[0].x= 0; cm->curve[0].y= 1; cm->curve[1].x= 0.33; @@ -254,10 +262,24 @@ void brush_curve_preset(Brush *b, BrushCurvePreset preset) cm->curve[2].y= 0; } else if(preset == BRUSH_PRESET_SMOOTH) { - // XXX: todo + cm->curve[0].x= 0; + cm->curve[0].y= 1; + cm->curve[1].x= 0.1; + cm->curve[1].y= 0.97553; + cm->curve[2].x= 0.3; + cm->curve[2].y= 0.79389; + cm->curve[3].x= 0.9; + cm->curve[3].y= 0.02447; + cm->curve[4].x= 0.7; + cm->curve[4].y= 0.20611; + cm->curve[5].x= 1; + cm->curve[5].y= 0; } else if(preset == BRUSH_PRESET_MAX) { - // XXX: todo + cm->curve[0].x= 0; + cm->curve[0].y= 1; + cm->curve[1].x= 1; + cm->curve[1].y= 1; } curvemapping_changed(b->curve, 0); |