diff options
Diffstat (limited to 'release/scripts/startup')
3 files changed, 69 insertions, 23 deletions
diff --git a/release/scripts/startup/bl_operators/object_quick_effects.py b/release/scripts/startup/bl_operators/object_quick_effects.py index 62d522fabd7..8ac1262645b 100644 --- a/release/scripts/startup/bl_operators/object_quick_effects.py +++ b/release/scripts/startup/bl_operators/object_quick_effects.py @@ -528,8 +528,8 @@ class QuickLiquid(Operator): # set color mapping field to show phi grid for liquid liquid_domain.domain_settings.color_ramp_field = 'PHI' - # set slicing method to single - liquid_domain.domain_settings.axis_slice_method = 'SINGLE' + # perform a single slice of the domain + liquid_domain.domain_settings.use_slice = True # set display thickness to a lower value for more detailed display of phi grids liquid_domain.domain_settings.display_thickness = 0.02 diff --git a/release/scripts/startup/bl_ui/properties_data_volume.py b/release/scripts/startup/bl_ui/properties_data_volume.py index af2c94ad423..0a8bbd19b63 100644 --- a/release/scripts/startup/bl_ui/properties_data_volume.py +++ b/release/scripts/startup/bl_ui/properties_data_volume.py @@ -142,9 +142,6 @@ class DATA_PT_volume_viewport_display(DataButtonsPanel, Panel): volume = context.volume display = volume.display - axis_slice_method = display.axis_slice_method - - do_full_slicing = (axis_slice_method == 'FULL') col = layout.column(align=True) col.prop(display, "wireframe_type") @@ -152,14 +149,37 @@ class DATA_PT_volume_viewport_display(DataButtonsPanel, Panel): sub.active = display.wireframe_type in {'BOXES', 'POINTS'} sub.prop(display, "wireframe_detail", text="Detail") - col = layout.column(align=True) + col = layout.column() col.prop(display, "density") col.prop(display, "interpolation_method") - col.prop(display, "axis_slice_method") - if not do_full_slicing: - col.prop(display, "slice_axis") - col.prop(display, "slice_depth") + +class DATA_PT_volume_viewport_display_slicing(DataButtonsPanel, Panel): + bl_label = "" + bl_parent_id = 'DATA_PT_volume_viewport_display' + COMPAT_ENGINES = {'BLENDER_RENDER', 'BLENDER_EEVEE', 'BLENDER_WORKBENCH'} + + def draw_header(self, context): + layout = self.layout + + volume = context.volume + display = volume.display + + layout.prop(display, "use_slice") + + def draw(self, context): + layout = self.layout + layout.use_property_split = True + layout.use_property_decorate = False + + volume = context.volume + display = volume.display + + layout.active = display.use_slice + + col = layout.column() + col.prop(display, "slice_axis") + col.prop(display, "slice_depth") class DATA_PT_custom_props_volume(DataButtonsPanel, PropertyPanel, Panel): @@ -173,6 +193,7 @@ classes = ( DATA_PT_volume_grids, DATA_PT_volume_file, DATA_PT_volume_viewport_display, + DATA_PT_volume_viewport_display_slicing, DATA_PT_volume_render, DATA_PT_custom_props_volume, VOLUME_UL_grids, diff --git a/release/scripts/startup/bl_ui/properties_physics_fluid.py b/release/scripts/startup/bl_ui/properties_physics_fluid.py index cdbd7f75193..1f5a96f2705 100644 --- a/release/scripts/startup/bl_ui/properties_physics_fluid.py +++ b/release/scripts/startup/bl_ui/properties_physics_fluid.py @@ -1301,9 +1301,6 @@ class PHYSICS_PT_viewport_display(PhysicButtonsPanel, Panel): flow = layout.grid_flow(row_major=True, columns=0, even_columns=True, even_rows=False, align=True) domain = context.fluid.domain_settings - axis_slice_method = domain.axis_slice_method - - do_full_slicing = (axis_slice_method == 'FULL') col = flow.column(align=False) col.prop(domain, "display_thickness") @@ -1314,19 +1311,43 @@ class PHYSICS_PT_viewport_display(PhysicButtonsPanel, Panel): if domain.use_color_ramp and domain.color_ramp_field == 'FLAGS': sub.enabled = False - col.prop(domain, "axis_slice_method") - - if not do_full_slicing: - col.prop(domain, "slice_axis") - col.prop(domain, "slice_depth") - if domain.display_interpolation == 'CLOSEST' or domain.color_ramp_field == 'FLAGS': - col.prop(domain, "show_gridlines") - col = col.column() - col.active = do_full_slicing + col.active = not domain.use_slice col.prop(domain, "slice_per_voxel") +class PHYSICS_PT_viewport_display_slicing(PhysicButtonsPanel, Panel): + bl_label = "Slice" + bl_parent_id = 'PHYSICS_PT_viewport_display' + bl_options = {'DEFAULT_CLOSED'} + + @classmethod + def poll(cls, context): + return (PhysicButtonsPanel.poll_fluid_domain(context)) + + def draw_header(self, context): + md = context.fluid.domain_settings + + self.layout.prop(md, "use_slice", text="") + + def draw(self, context): + layout = self.layout + layout.use_property_split = True + + domain = context.fluid.domain_settings + + layout.active = domain.use_slice + + col = layout.column() + col.prop(domain, "slice_axis") + col.prop(domain, "slice_depth") + + sub = col.column() + sub.prop(domain, "show_gridlines") + + sub.active = domain.display_interpolation == 'CLOSEST' or domain.color_ramp_field == 'FLAGS' + + class PHYSICS_PT_viewport_display_color(PhysicButtonsPanel, Panel): bl_label = "Grid Display" bl_parent_id = 'PHYSICS_PT_viewport_display' @@ -1408,7 +1429,8 @@ class PHYSICS_PT_viewport_display_advanced(PhysicButtonsPanel, Panel): @classmethod def poll(cls, context): - return PhysicButtonsPanel.poll_fluid_domain(context) and context.fluid.domain_settings.show_gridlines + domain = context.fluid.domain_settings + return PhysicButtonsPanel.poll_fluid_domain(context) and domain.use_slice and domain.show_gridlines def draw(self, context): layout = self.layout @@ -1416,6 +1438,8 @@ class PHYSICS_PT_viewport_display_advanced(PhysicButtonsPanel, Panel): domain = context.fluid.domain_settings + layout.active = domain.display_interpolation == 'CLOSEST' or domain.color_ramp_field == 'FLAGS' + col = layout.column() col.prop(domain, "gridlines_color_field", text="Color Gridlines") @@ -1456,6 +1480,7 @@ classes = ( PHYSICS_PT_flow_initial_velocity, PHYSICS_PT_flow_texture, PHYSICS_PT_viewport_display, + PHYSICS_PT_viewport_display_slicing, PHYSICS_PT_viewport_display_color, PHYSICS_PT_viewport_display_debug, PHYSICS_PT_viewport_display_advanced, |