display options to help with 3d printing.

editmesh debug info,
- overhang (with axis angle options)
- wall thickness (with min/max distance)
- self-intersections.

access below 'Mesh Display' panel.
This commit is contained in:
2013-04-17 09:27:23 +00:00
parent bb1b2529a0
commit 14f9f167b2
12 changed files with 540 additions and 4 deletions

View File

@@ -2607,6 +2607,44 @@ class VIEW3D_PT_view3d_meshdisplay(Panel):
layout.prop(mesh, "show_extra_indices")
class VIEW3D_PT_view3d_meshstatvis(Panel):
bl_space_type = 'VIEW_3D'
bl_region_type = 'UI'
bl_label = "Mesh Debug"
@classmethod
def poll(cls, context):
# The active object check is needed because of local-mode
return (context.active_object and (context.mode == 'EDIT_MESH'))
def draw_header(self, context):
mesh = context.active_object.data
self.layout.prop(mesh, "show_statvis", text="")
def draw(self, context):
layout = self.layout
mesh = context.active_object.data
statvis = context.tool_settings.statvis
layout.active = mesh.show_statvis
layout.prop(statvis, "type")
statvis_type = statvis.type
if statvis_type == 'OVERHANG':
row = layout.row(align=True)
row.prop(statvis, "overhang_min", text="")
row.prop(statvis, "overhang_max", text="")
layout.prop(statvis, "overhang_axis", expand=True)
elif statvis_type == 'THICKNESS':
row = layout.row(align=True)
row.prop(statvis, "thickness_min", text="")
row.prop(statvis, "thickness_max", text="")
layout.prop(statvis, "thickness_samples")
elif statvis_type == 'INTERSECT':
pass
class VIEW3D_PT_view3d_curvedisplay(Panel):
bl_space_type = 'VIEW_3D'
bl_region_type = 'UI'