Some changes to smoke ui (path by nudelZ) - this divides the panel in normal and advanced options

This commit is contained in:
Daniel Genrich 2009-08-13 14:27:35 +00:00
parent 79a928682c
commit 94d359c9bc

@ -41,74 +41,119 @@ class PHYSICS_PT_smoke(PhysicButtonsPanel):
layout.itemR(md, "smoke_type", expand=True)
if md.smoke_type == 'TYPE_DOMAIN':
domain = md.domain_settings
split = layout.split()
col = split.column()
col.itemL(text="Resolution:")
col.itemR(domain, "maxres", text="Divisions")
col.itemL(text="Display:")
col.itemR(domain, "visibility", text="Resolution")
col.itemR(domain, "color", slider=True)
sub = col.column()
sub.active = domain.highres
sub.itemR(domain, "viewhighres")
col = split.column()
col.itemL(text="Behavior:")
col.itemR(md.domain_settings, "alpha")
col.itemR(md.domain_settings, "beta")
col.itemL(text="Resolution:")
col.itemR(md.domain_settings, "maxres", text="Low")
col.itemR(domain, "alpha")
col.itemR(domain, "beta")
col.itemR(domain, "dissolve_smoke", text="Dissolve")
sub = col.column()
sub.active = md.domain_settings.highres
sub.itemR(md.domain_settings, "amplify", text="High")
col.itemR(md.domain_settings, "highres", text="Use High Resolution")
col = split.column()
col.itemL(text="Display:")
col.itemR(md.domain_settings, "visibility")
col.itemR(md.domain_settings, "color", slider=True)
sub = col.column()
sub.active = md.domain_settings.highres
sub.itemR(md.domain_settings, "viewhighres")
layout.itemL(text="Noise Type:")
layout.itemR(md.domain_settings, "noise_type", expand=True)
split = layout.split()
col = split.column()
col.itemR(md.domain_settings, "strength")
sub = split.column()
split = layout.split()
col = split.column()
col.itemR(md.domain_settings, "dissolve_smoke")
sub = col.column()
sub.active = md.domain_settings.dissolve_smoke
sub.itemR(md.domain_settings, "dissolve_speed")
sub.itemR(md.domain_settings, "dissolve_smoke_log")
split = layout.split()
col = split.column()
col.itemL(text="Flow Group:")
col.itemR(md.domain_settings, "fluid_group", text="")
#col.itemL(text="Effector Group:")
#col.itemR(md.domain_settings, "eff_group", text="")
col = split.column()
col.itemL(text="Collision Group:")
col.itemR(md.domain_settings, "coll_group", text="")
sub.active = domain.dissolve_smoke
sub.itemR(domain, "dissolve_speed", text="Speed")
sub.itemR(domain, "dissolve_smoke_log", text="Slow")
elif md.smoke_type == 'TYPE_FLOW':
flow = md.flow_settings
split = layout.split()
col = split.column()
col.itemR(md.flow_settings, "outflow")
col.itemR(flow, "outflow")
col.itemL(text="Particle System:")
col.item_pointerR(md.flow_settings, "psys", ob, "particle_systems", text="")
col.item_pointerR(flow, "psys", ob, "particle_systems", text="")
if md.flow_settings.outflow:
col = split.column()
else:
col = split.column()
col.itemL(text="Behavior:")
col.itemR(md.flow_settings, "temperature")
col.itemR(md.flow_settings, "density")
col.itemR(flow, "temperature")
col.itemR(flow, "density")
#elif md.smoke_type == 'TYPE_COLL':
# layout.itemS()
class PHYSICS_PT_smoke_highres(PhysicButtonsPanel):
__label__ = "Smoke High Resolution"
__default_closed__ = True
def poll(self, context):
md = context.smoke
if md:
return (md.smoke_type == 'TYPE_DOMAIN')
return False
def draw_header(self, context):
layout = self.layout
high = context.smoke.domain_settings
layout.itemR(high, "highres", text="")
def draw(self, context):
layout = self.layout
high = context.smoke.domain_settings
layout.active = high.highres
split = layout.split()
col = split.column()
col.itemL(text="Resolution:")
col.itemR(high, "amplify", text="Divisions")
sub = split.column()
sub.itemL(text="Noise Method:")
sub.row().itemR(high, "noise_type", text="")
sub.itemR(high, "strength")
class PHYSICS_PT_smoke_groups(PhysicButtonsPanel):
__label__ = "Smoke Groups"
__default_closed__ = True
def poll(self, context):
md = context.smoke
if md:
return (md.smoke_type == 'TYPE_DOMAIN')
return False
def draw(self, context):
layout = self.layout
group = context.smoke.domain_settings
split = layout.split()
col = split.column()
col.itemL(text="Flow Group:")
col.itemR(group, "fluid_group", text="")
#col.itemL(text="Effector Group:")
#col.itemR(group, "eff_group", text="")
col = split.column()
col.itemL(text="Collision Group:")
col.itemR(group, "coll_group", text="")
bpy.types.register(PHYSICS_PT_smoke)
bpy.types.register(PHYSICS_PT_smoke_highres)
bpy.types.register(PHYSICS_PT_smoke_groups)