[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [29142] branches/branch-farsthary: Added smoothness property to unlimited clay, it controls the subdivission smoothness for further user control over sculpting
Raul Fernandez Hernandez
farsthary at gmail.com
Tue Jun 1 21:54:05 CEST 2010
Revision: 29142
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=29142
Author: farsthary
Date: 2010-06-01 21:54:05 +0200 (Tue, 01 Jun 2010)
Log Message:
-----------
Added smoothness property to unlimited clay, it controls the subdivission smoothness for further user control over sculpting
Modified Paths:
--------------
branches/branch-farsthary/release/scripts/ui/space_view3d_toolbar.py
branches/branch-farsthary/source/blender/blenkernel/intern/brush.c
branches/branch-farsthary/source/blender/blenloader/intern/readfile.c
branches/branch-farsthary/source/blender/editors/sculpt_paint/sculpt.c
branches/branch-farsthary/source/blender/makesdna/DNA_brush_types.h
branches/branch-farsthary/source/blender/makesrna/intern/rna_brush.c
Modified: branches/branch-farsthary/release/scripts/ui/space_view3d_toolbar.py
===================================================================
--- branches/branch-farsthary/release/scripts/ui/space_view3d_toolbar.py 2010-06-01 19:48:55 UTC (rev 29141)
+++ branches/branch-farsthary/release/scripts/ui/space_view3d_toolbar.py 2010-06-01 19:54:05 UTC (rev 29142)
@@ -584,6 +584,7 @@
col.prop(brush,"use_dynamic_subdiv")
if brush.use_dynamic_subdiv ==True:
col.prop(brush,"detail",slider=True)
+ col.prop(brush,"smoothness",slider=True)
# Texture Paint Mode #
Modified: branches/branch-farsthary/source/blender/blenkernel/intern/brush.c
===================================================================
--- branches/branch-farsthary/source/blender/blenkernel/intern/brush.c 2010-06-01 19:48:55 UTC (rev 29141)
+++ branches/branch-farsthary/source/blender/blenkernel/intern/brush.c 2010-06-01 19:54:05 UTC (rev 29142)
@@ -84,6 +84,7 @@
brush->sculpt_tool = SCULPT_TOOL_DRAW;
brush->flag |= BRUSH_SPACE;
brush->detail = 0.25f;
+ brush->smoothness = 0.5f;
brush_curve_preset(brush, CURVE_PRESET_SMOOTH);
Modified: branches/branch-farsthary/source/blender/blenloader/intern/readfile.c
===================================================================
--- branches/branch-farsthary/source/blender/blenloader/intern/readfile.c 2010-06-01 19:48:55 UTC (rev 29141)
+++ branches/branch-farsthary/source/blender/blenloader/intern/readfile.c 2010-06-01 19:54:05 UTC (rev 29142)
@@ -10772,9 +10772,14 @@
}
Brush *brush;
- for (brush= main->brush.first; brush; brush= brush->id.next)
+ for (brush= main->brush.first; brush; brush= brush->id.next){
if(brush->detail == 0.0f)
- brush->detail = 0.25f;
+ brush->detail = 0.3f;
+ if (brush->smoothness == 0.0f)
+ brush->smoothness = 0.5f;
+
+ }
+
/* WATCH IT!!!: pointers from libdata have not been converted yet here! */
/* WATCH IT 2!: Userdef struct init has to be in editors/interface/resources.c! */
Modified: branches/branch-farsthary/source/blender/editors/sculpt_paint/sculpt.c
===================================================================
--- branches/branch-farsthary/source/blender/editors/sculpt_paint/sculpt.c 2010-06-01 19:48:55 UTC (rev 29141)
+++ branches/branch-farsthary/source/blender/editors/sculpt_paint/sculpt.c 2010-06-01 19:54:05 UTC (rev 29142)
@@ -116,6 +116,7 @@
float clip_tolerance[3];
float initial_mouse[2];
float detail;
+ float smoothness;
/* Variants */
float radius;
@@ -577,24 +578,24 @@
Object *obedit= ob;
Mesh *me= obedit->data;
EditEdge *eed;
+ float detail = ss->cache->detail * ss->cache->radius;
+ float smoothness = ss->cache->smoothness;
for(eed = me->edit_mesh->edges.first; eed; eed = eed->next){
if (eed->f & SELECT)
{
sub_v3_v3v3(diff, eed->v1->co, eed->v2->co);
- edgeLength = len_v3(diff);
-
- float detail = ss->cache->detail * ss->cache->radius;
+ edgeLength = len_v3(diff);
if (edgeLength < detail)
EM_select_edge(eed, 0);
else
- EM_select_edge(eed, 1);
+ EM_select_edge(eed, 1);
}
}
- esubdivideflag(obedit, me->edit_mesh, SELECT,0.4,0,B_SMOOTH,1, SUBDIV_CORNER_PATH, SUBDIV_SELECT_INNER);
+ esubdivideflag(obedit, me->edit_mesh, SELECT,smoothness,0,B_SMOOTH,1, SUBDIV_CORNER_PATH, SUBDIV_SELECT_INNER);
/* Clear selection */
for(eed = me->edit_mesh->edges.first; eed; eed = eed->next)
@@ -1768,7 +1769,10 @@
cache->vc = vc;
cache->brush = brush;
- if (brush->flag & BRUSH_SUBDIV) cache->detail = brush->detail;
+ if (brush->flag & BRUSH_SUBDIV){
+ cache->detail = brush->detail;
+ cache->smoothness = brush->smoothness;
+ }
cache->mats = MEM_callocN(sizeof(bglMats), "sculpt bglMats");
view3d_get_transformation(vc->ar, vc->rv3d, vc->obact, cache->mats);
Modified: branches/branch-farsthary/source/blender/makesdna/DNA_brush_types.h
===================================================================
--- branches/branch-farsthary/source/blender/makesdna/DNA_brush_types.h 2010-06-01 19:48:55 UTC (rev 29141)
+++ branches/branch-farsthary/source/blender/makesdna/DNA_brush_types.h 2010-06-01 19:54:05 UTC (rev 29142)
@@ -56,7 +56,8 @@
short flag, blend; /* general purpose flag, blend mode */
int size; /* brush diameter */
- float detail,pad; /* dynamic subdivission detail */
+ float detail; /* dynamic subdivission detail */
+ float smoothness; /* dynamic subdivission smoothness*/
float jitter; /* jitter the position of the brush */
float spacing; /* spacing of paint operations */
int smooth_stroke_radius; /* turning radius (in pixels) for smooth stroke */
Modified: branches/branch-farsthary/source/blender/makesrna/intern/rna_brush.c
===================================================================
--- branches/branch-farsthary/source/blender/makesrna/intern/rna_brush.c 2010-06-01 19:48:55 UTC (rev 29141)
+++ branches/branch-farsthary/source/blender/makesrna/intern/rna_brush.c 2010-06-01 19:54:05 UTC (rev 29142)
@@ -172,6 +172,11 @@
RNA_def_property_ui_text(prop, "Detail", "Dynamic subdivission detail");
RNA_def_property_update(prop, 0, "rna_Brush_update");
+ prop= RNA_def_property(srna, "smoothness", PROP_FLOAT, PROP_NONE);
+ RNA_def_property_range(prop, 0.0f, 1.0f);
+ RNA_def_property_ui_text(prop, "Smoothness", "Dynamic subdivission smoothness");
+ RNA_def_property_update(prop, 0, "rna_Brush_update");
+
prop= RNA_def_property(srna, "jitter", PROP_FLOAT, PROP_NONE);
RNA_def_property_float_sdna(prop, NULL, "jitter");
RNA_def_property_range(prop, 0.0f, 1.0f);
More information about the Bf-blender-cvs
mailing list