Corrective Smooth Modifier (aka delta-mush)

This modifier can be used to correct bad deformations,

Original patch D1183 by @sazerac, with own modifications
This commit is contained in:
Campbell Barton
2015-03-29 04:44:05 +11:00
parent 660173ed72
commit c16a8983ef
18 changed files with 1068 additions and 2 deletions

View File

@@ -1386,6 +1386,31 @@ class DATA_PT_modifiers(ModifierButtonsPanel, Panel):
sub.active = has_vgroup
sub.prop(md, "invert_vertex_group", text="", icon='ARROW_LEFTRIGHT')
def CORRECTIVE_SMOOTH(self, layout, ob, md):
is_bind = md.is_bind
layout.prop(md, "iterations")
layout.prop(md, "lambda_factor", text="Factor")
row = layout.row()
row.prop(md, "smooth_type")
split = layout.split()
col = split.column()
col.label(text="Vertex Group:")
row = col.row(align=True)
row.prop_search(md, "vertex_group", ob, "vertex_groups", text="")
row.prop(md, "invert_vertex_group", text="", icon='ARROW_LEFTRIGHT')
col = split.column()
col.prop(md, "use_only_smooth")
col.prop(md, "use_pin_boundary")
layout.prop(md, "rest_source")
if md.rest_source == 'BIND':
layout.operator("object.correctivesmooth_bind", text="Unbind" if is_bind else "Bind")
if __name__ == "__main__": # only for live edit.
bpy.utils.register_module(__name__)