Changeset View
Changeset View
Standalone View
Standalone View
release/scripts/startup/bl_ui/properties_data_volume.py
| Show All 12 Lines | class DataButtonsPanel: | ||||
| def poll(cls, context): | def poll(cls, context): | ||||
| engine = context.scene.render.engine | engine = context.scene.render.engine | ||||
| return context.volume and (engine in cls.COMPAT_ENGINES) | return context.volume and (engine in cls.COMPAT_ENGINES) | ||||
| class DATA_PT_context_volume(DataButtonsPanel, Panel): | class DATA_PT_context_volume(DataButtonsPanel, Panel): | ||||
| bl_label = "" | bl_label = "" | ||||
| bl_options = {'HIDE_HEADER'} | bl_options = {'HIDE_HEADER'} | ||||
| COMPAT_ENGINES = {'BLENDER_RENDER', 'BLENDER_EEVEE', 'BLENDER_EEVEE_NEXT', 'BLENDER_WORKBENCH'} | COMPAT_ENGINES = {'BLENDER_RENDER', 'BLENDER_EEVEE', 'BLENDER_EEVEE_NEXT', 'BLENDER_WORKBENCH','BLENDER_WORKBENCH_NEXT'} | ||||
| def draw(self, context): | def draw(self, context): | ||||
| layout = self.layout | layout = self.layout | ||||
| ob = context.object | ob = context.object | ||||
| volume = context.volume | volume = context.volume | ||||
| space = context.space_data | space = context.space_data | ||||
| if ob: | if ob: | ||||
| layout.template_ID(ob, "data") | layout.template_ID(ob, "data") | ||||
| elif volume: | elif volume: | ||||
| layout.template_ID(space, "pin_id") | layout.template_ID(space, "pin_id") | ||||
| class DATA_PT_volume_file(DataButtonsPanel, Panel): | class DATA_PT_volume_file(DataButtonsPanel, Panel): | ||||
| bl_label = "OpenVDB File" | bl_label = "OpenVDB File" | ||||
| COMPAT_ENGINES = {'BLENDER_RENDER', 'BLENDER_EEVEE', 'BLENDER_EEVEE_NEXT', 'BLENDER_WORKBENCH'} | COMPAT_ENGINES = {'BLENDER_RENDER', 'BLENDER_EEVEE', 'BLENDER_EEVEE_NEXT', 'BLENDER_WORKBENCH','BLENDER_WORKBENCH_NEXT'} | ||||
| def draw(self, context): | def draw(self, context): | ||||
| layout = self.layout | layout = self.layout | ||||
| volume = context.volume | volume = context.volume | ||||
| volume.grids.load() | volume.grids.load() | ||||
| layout.prop(volume, "filepath", text="") | layout.prop(volume, "filepath", text="") | ||||
| Show All 28 Lines | def draw_item(self, _context, layout, _data, grid, _icon, _active_data, _active_propname, _index): | ||||
| row = layout.row() | row = layout.row() | ||||
| row.alignment = 'RIGHT' | row.alignment = 'RIGHT' | ||||
| row.active = False | row.active = False | ||||
| row.label(text=data_type.name) | row.label(text=data_type.name) | ||||
| class DATA_PT_volume_grids(DataButtonsPanel, Panel): | class DATA_PT_volume_grids(DataButtonsPanel, Panel): | ||||
| bl_label = "Grids" | bl_label = "Grids" | ||||
| COMPAT_ENGINES = {'BLENDER_RENDER', 'BLENDER_EEVEE', 'BLENDER_EEVEE_NEXT', 'BLENDER_WORKBENCH'} | COMPAT_ENGINES = {'BLENDER_RENDER', 'BLENDER_EEVEE', 'BLENDER_EEVEE_NEXT', 'BLENDER_WORKBENCH','BLENDER_WORKBENCH_NEXT'} | ||||
| def draw(self, context): | def draw(self, context): | ||||
| layout = self.layout | layout = self.layout | ||||
| volume = context.volume | volume = context.volume | ||||
| volume.grids.load() | volume.grids.load() | ||||
| layout.template_list("VOLUME_UL_grids", "grids", volume, "grids", volume.grids, "active_index", rows=3) | layout.template_list("VOLUME_UL_grids", "grids", volume, "grids", volume.grids, "active_index", rows=3) | ||||
| class DATA_PT_volume_render(DataButtonsPanel, Panel): | class DATA_PT_volume_render(DataButtonsPanel, Panel): | ||||
| bl_label = "Render" | bl_label = "Render" | ||||
| COMPAT_ENGINES = {'BLENDER_RENDER', 'BLENDER_EEVEE', 'BLENDER_EEVEE_NEXT', 'BLENDER_WORKBENCH'} | COMPAT_ENGINES = {'BLENDER_RENDER', 'BLENDER_EEVEE', 'BLENDER_EEVEE_NEXT', 'BLENDER_WORKBENCH','BLENDER_WORKBENCH_NEXT'} | ||||
| def draw(self, context): | def draw(self, context): | ||||
| layout = self.layout | layout = self.layout | ||||
| layout.use_property_split = True | layout.use_property_split = True | ||||
| layout.use_property_decorate = False | layout.use_property_decorate = False | ||||
| scene = context.scene | scene = context.scene | ||||
| volume = context.volume | volume = context.volume | ||||
| Show All 15 Lines | def draw(self, context): | ||||
| col.prop(volume, "velocity_grid") | col.prop(volume, "velocity_grid") | ||||
| col.prop(volume, "velocity_unit") | col.prop(volume, "velocity_unit") | ||||
| col.prop(volume, "velocity_scale") | col.prop(volume, "velocity_scale") | ||||
| class DATA_PT_volume_viewport_display(DataButtonsPanel, Panel): | class DATA_PT_volume_viewport_display(DataButtonsPanel, Panel): | ||||
| bl_label = "Viewport Display" | bl_label = "Viewport Display" | ||||
| COMPAT_ENGINES = {'BLENDER_RENDER', 'BLENDER_EEVEE', 'BLENDER_EEVEE_NEXT', 'BLENDER_WORKBENCH'} | COMPAT_ENGINES = {'BLENDER_RENDER', 'BLENDER_EEVEE', 'BLENDER_EEVEE_NEXT', 'BLENDER_WORKBENCH','BLENDER_WORKBENCH_NEXT'} | ||||
| def draw(self, context): | def draw(self, context): | ||||
| layout = self.layout | layout = self.layout | ||||
| layout.use_property_split = True | layout.use_property_split = True | ||||
| layout.use_property_decorate = False | layout.use_property_decorate = False | ||||
| volume = context.volume | volume = context.volume | ||||
| display = volume.display | display = volume.display | ||||
| col = layout.column(align=True) | col = layout.column(align=True) | ||||
| col.prop(display, "wireframe_type") | col.prop(display, "wireframe_type") | ||||
| sub = col.row() | sub = col.row() | ||||
| sub.active = display.wireframe_type in {'BOXES', 'POINTS'} | sub.active = display.wireframe_type in {'BOXES', 'POINTS'} | ||||
| sub.prop(display, "wireframe_detail", text="Detail") | sub.prop(display, "wireframe_detail", text="Detail") | ||||
| col = layout.column() | col = layout.column() | ||||
| col.prop(display, "density") | col.prop(display, "density") | ||||
| col.prop(display, "interpolation_method") | col.prop(display, "interpolation_method") | ||||
| class DATA_PT_volume_viewport_display_slicing(DataButtonsPanel, Panel): | class DATA_PT_volume_viewport_display_slicing(DataButtonsPanel, Panel): | ||||
| bl_label = "" | bl_label = "" | ||||
| bl_parent_id = 'DATA_PT_volume_viewport_display' | bl_parent_id = 'DATA_PT_volume_viewport_display' | ||||
| COMPAT_ENGINES = {'BLENDER_RENDER', 'BLENDER_EEVEE', 'BLENDER_EEVEE_NEXT', 'BLENDER_WORKBENCH'} | COMPAT_ENGINES = {'BLENDER_RENDER', 'BLENDER_EEVEE', 'BLENDER_EEVEE_NEXT', 'BLENDER_WORKBENCH','BLENDER_WORKBENCH_NEXT'} | ||||
| def draw_header(self, context): | def draw_header(self, context): | ||||
| layout = self.layout | layout = self.layout | ||||
| volume = context.volume | volume = context.volume | ||||
| display = volume.display | display = volume.display | ||||
| layout.prop(display, "use_slice") | layout.prop(display, "use_slice") | ||||
| Show All 9 Lines | def draw(self, context): | ||||
| layout.active = display.use_slice | layout.active = display.use_slice | ||||
| col = layout.column() | col = layout.column() | ||||
| col.prop(display, "slice_axis") | col.prop(display, "slice_axis") | ||||
| col.prop(display, "slice_depth") | col.prop(display, "slice_depth") | ||||
| class DATA_PT_custom_props_volume(DataButtonsPanel, PropertyPanel, Panel): | class DATA_PT_custom_props_volume(DataButtonsPanel, PropertyPanel, Panel): | ||||
| COMPAT_ENGINES = {'BLENDER_RENDER', 'BLENDER_EEVEE', 'BLENDER_EEVEE_NEXT', 'BLENDER_WORKBENCH'} | COMPAT_ENGINES = {'BLENDER_RENDER', 'BLENDER_EEVEE', 'BLENDER_EEVEE_NEXT', 'BLENDER_WORKBENCH','BLENDER_WORKBENCH_NEXT'} | ||||
| _context_path = "object.data" | _context_path = "object.data" | ||||
| _property_type = bpy.types.Volume | _property_type = bpy.types.Volume | ||||
| classes = ( | classes = ( | ||||
| DATA_PT_context_volume, | DATA_PT_context_volume, | ||||
| DATA_PT_volume_grids, | DATA_PT_volume_grids, | ||||
| DATA_PT_volume_file, | DATA_PT_volume_file, | ||||
| Show All 11 Lines | |||||