[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [22266] branches/blender2.5/blender/ release/ui/buttons_physics_smoke.py: smoke gui: refining the new simulation panel ui
Daniel Genrich
daniel.genrich at gmx.net
Thu Aug 6 17:55:42 CEST 2009
Revision: 22266
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=22266
Author: genscher
Date: 2009-08-06 17:55:42 +0200 (Thu, 06 Aug 2009)
Log Message:
-----------
smoke gui: refining the new simulation panel ui
(thanks to nudelZ for this patch)
Modified Paths:
--------------
branches/blender2.5/blender/release/ui/buttons_physics_smoke.py
Modified: branches/blender2.5/blender/release/ui/buttons_physics_smoke.py
===================================================================
--- branches/blender2.5/blender/release/ui/buttons_physics_smoke.py 2009-08-06 15:54:57 UTC (rev 22265)
+++ branches/blender2.5/blender/release/ui/buttons_physics_smoke.py 2009-08-06 15:55:42 UTC (rev 22266)
@@ -1,65 +1,101 @@
-
-import bpy
-
-class PhysicButtonsPanel(bpy.types.Panel):
- __space_type__ = "BUTTONS_WINDOW"
- __region_type__ = "WINDOW"
- __context__ = "physics"
-
- def poll(self, context):
- ob = context.object
- rd = context.scene.render_data
- return (ob and ob.type == 'MESH') and (not rd.use_game_engine)
-
-class PHYSICS_PT_smoke(PhysicButtonsPanel):
- __label__ = "Smoke"
-
- def draw(self, context):
- layout = self.layout
-
- md = context.smoke
- ob = context.object
-
- split = layout.split()
- split.operator_context = 'EXEC_DEFAULT'
-
- if md:
- # remove modifier + settings
- split.set_context_pointer("modifier", md)
- split.itemO("object.modifier_remove", text="Remove")
-
- row = split.row(align=True)
- row.itemR(md, "render", text="")
- row.itemR(md, "realtime", text="")
-
- else:
- # add modifier
- split.item_enumO("object.modifier_add", "type", 'SMOKE', text="Add")
- split.itemL()
-
- if md:
- layout.itemR(md, "smoke_type")
-
- if md.smoke_type == 'TYPE_DOMAIN':
- layout.itemS()
- layout.itemR(md.domain_settings, "maxres")
- layout.itemR(md.domain_settings, "color")
- layout.itemR(md.domain_settings, "amplify")
- layout.itemR(md.domain_settings, "highres")
- layout.itemR(md.domain_settings, "noise_type")
- layout.itemR(md.domain_settings, "visibility")
- layout.itemR(md.domain_settings, "alpha")
- layout.itemR(md.domain_settings, "beta")
- layout.itemR(md.domain_settings, "fluid_group")
- layout.itemR(md.domain_settings, "eff_group")
- layout.itemR(md.domain_settings, "coll_group")
- elif md.smoke_type == 'TYPE_FLOW':
- layout.itemS()
- layout.itemR(md.flow_settings, "outflow")
- layout.itemR(md.flow_settings, "density")
- layout.itemR(md.flow_settings, "temperature")
- layout.item_pointerR(md.flow_settings, "psys", ob, "particle_systems")
- elif md.smoke_type == 'TYPE_COLL':
- layout.itemS()
-
-bpy.types.register(PHYSICS_PT_smoke)
+
+import bpy
+
+class PhysicButtonsPanel(bpy.types.Panel):
+ __space_type__ = "BUTTONS_WINDOW"
+ __region_type__ = "WINDOW"
+ __context__ = "physics"
+
+ def poll(self, context):
+ ob = context.object
+ rd = context.scene.render_data
+ return (ob and ob.type == 'MESH') and (not rd.use_game_engine)
+
+class PHYSICS_PT_smoke(PhysicButtonsPanel):
+ __label__ = "Smoke"
+
+ def draw(self, context):
+ layout = self.layout
+
+ md = context.smoke
+ ob = context.object
+
+ split = layout.split()
+ split.operator_context = 'EXEC_DEFAULT'
+
+ if md:
+ # remove modifier + settings
+ split.set_context_pointer("modifier", md)
+ split.itemO("object.modifier_remove", text="Remove")
+
+ row = split.row(align=True)
+ row.itemR(md, "render", text="")
+ row.itemR(md, "realtime", text="")
+
+ else:
+ # add modifier
+ split.item_enumO("object.modifier_add", "type", 'SMOKE', text="Add")
+ split.itemL()
+
+ if md:
+ layout.itemR(md, "smoke_type")
+
+ if md.smoke_type == 'TYPE_DOMAIN':
+
+ split = layout.split()
+
+ 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")
+ 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")
+
+ sub = split.column()
+ sub.itemL(text="Display:")
+ sub.itemR(md.domain_settings, "visibility")
+ sub.itemR(md.domain_settings, "color")
+
+ layout.itemL(text="Noise Type:")
+ layout.itemR(md.domain_settings, "noise_type", expand=True)
+
+ 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="")
+
+ elif md.smoke_type == 'TYPE_FLOW':
+
+ layout.itemR(md.flow_settings, "outflow")
+
+ split = layout.split()
+
+ 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")
+
+ sub = split.column()
+ sub.itemL(text="particle System:")
+ sub.item_pointerR(md.flow_settings, "psys", ob, "particle_systems", text="")
+
+ elif md.smoke_type == 'TYPE_COLL':
+ layout.itemS()
+
+bpy.types.register(PHYSICS_PT_smoke)
\ No newline at end of file
More information about the Bf-blender-cvs
mailing list