diff options
author | Janne Karhu <jhkarh@gmail.com> | 2010-03-22 20:12:08 +0300 |
---|---|---|
committer | Janne Karhu <jhkarh@gmail.com> | 2010-03-22 20:12:08 +0300 |
commit | 867cad85b7af1059b79b5ad70b046c3f68f17b69 (patch) | |
tree | b89f9250b2ea4d8f6c878f9674395dcb0478fe2c /source/blender/editors/physics | |
parent | 113ea4368e8f0b8036c59354837afe5d68e0111a (diff) |
Fix for [#21103] Updating bugs in Particle Mode
Diffstat (limited to 'source/blender/editors/physics')
-rw-r--r-- | source/blender/editors/physics/particle_edit.c | 21 |
1 files changed, 12 insertions, 9 deletions
diff --git a/source/blender/editors/physics/particle_edit.c b/source/blender/editors/physics/particle_edit.c index 744ef285179..2261aa6b57b 100644 --- a/source/blender/editors/physics/particle_edit.c +++ b/source/blender/editors/physics/particle_edit.c @@ -2386,7 +2386,7 @@ static int weight_set_exec(bContext *C, wmOperator *op) ParticleBrushData *brush= &pset->brush[pset->brushtype]; edit= psys->edit; - weight= (float)(brush->strength / 100.0f); + weight= brush->strength; LOOP_SELECTED_POINTS { ParticleData *pa= psys->particles + p; @@ -2510,6 +2510,8 @@ static int brush_radial_control_exec(bContext *C, wmOperator *op) else if(mode == WM_RADIALCONTROL_STRENGTH) brush->strength= new_value; + WM_event_add_notifier(C, NC_WINDOW, NULL); + return OPERATOR_FINISHED; } @@ -2944,7 +2946,7 @@ static void brush_puff(PEData *data, int point_index) VECCOPY(co, key->co); mul_m4_v3(mat, co); length += len_v3v3(lastco, co); - if((key->flag & PEK_SELECT) && !(key->flag & PEK_HIDE)) { + if((data->select==0 || (key->flag & PEK_SELECT)) && !(key->flag & PEK_HIDE)) { VECADDFAC(kco, rootco, nor, length); /* blend between the current and straight position */ @@ -3359,7 +3361,7 @@ static void brush_edit_apply(bContext *C, wmOperator *op, PointerRNA *itemptr) data.mval= mval; data.rad= (float)brush->size; - data.combfac= (float)(brush->strength - 50) / 50.0f; + data.combfac= (brush->strength - 0.5f) * 2.0f; if(data.combfac < 0.0f) data.combfac= 1.0f - 9.0f * data.combfac; else @@ -3381,7 +3383,7 @@ static void brush_edit_apply(bContext *C, wmOperator *op, PointerRNA *itemptr) PE_set_view3d_data(C, &data); data.mval= mval; data.rad= (float)brush->size; - data.cutfac= (float)(brush->strength / 100.0f); + data.cutfac= brush->strength; if(selected) foreach_selected_point(&data, brush_cut); @@ -3405,7 +3407,7 @@ static void brush_edit_apply(bContext *C, wmOperator *op, PointerRNA *itemptr) data.mval= mval; data.rad= (float)brush->size; - data.growfac= (float)brush->strength / 5000.0f; + data.growfac= brush->strength / 50.0f; if(brush->invert ^ flip) data.growfac= 1.0f - data.growfac; @@ -3427,8 +3429,9 @@ static void brush_edit_apply(bContext *C, wmOperator *op, PointerRNA *itemptr) data.dm= psmd->dm; data.mval= mval; data.rad= (float)brush->size; + data.select= selected; - data.pufffac= (float)(brush->strength - 50) / 50.0f; + data.pufffac= (brush->strength - 0.5f) * 2.0f; if(data.pufffac < 0.0f) data.pufffac= 1.0f - 9.0f * data.pufffac; else @@ -3449,7 +3452,7 @@ static void brush_edit_apply(bContext *C, wmOperator *op, PointerRNA *itemptr) PE_set_view3d_data(C, &data); data.mval= mval; - added= brush_add(&data, brush->strength); + added= brush_add(&data, brush->count); if(pset->flag & PE_KEEP_LENGTHS) recalc_lengths(edit); @@ -3469,7 +3472,7 @@ static void brush_edit_apply(bContext *C, wmOperator *op, PointerRNA *itemptr) data.vec[0]= data.vec[1]= data.vec[2]= 0.0f; data.tot= 0; - data.smoothfac= (float)(brush->strength / 100.0f); + data.smoothfac= brush->strength; invert_m4_m4(ob->imat, ob->obmat); @@ -3492,7 +3495,7 @@ static void brush_edit_apply(bContext *C, wmOperator *op, PointerRNA *itemptr) data.mval= mval; data.rad= (float)brush->size; - data.weightfac = (float)(brush->strength / 100.0f); /* note that this will never be zero */ + data.weightfac = brush->strength; /* note that this will never be zero */ foreach_mouse_hit_key(&data, brush_weight, selected); } |