Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender-addons.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'object_print3d_utils/__init__.py')
-rw-r--r--object_print3d_utils/__init__.py160
1 files changed, 61 insertions, 99 deletions
diff --git a/object_print3d_utils/__init__.py b/object_print3d_utils/__init__.py
index 5ae1d3d6..6bf2a8a7 100644
--- a/object_print3d_utils/__init__.py
+++ b/object_print3d_utils/__init__.py
@@ -21,7 +21,7 @@
bl_info = {
"name": "3D Print Toolbox",
"author": "Campbell Barton",
- "blender": (2, 79, 0),
+ "blender": (2, 80, 0),
"location": "3D View > Toolbox",
"description": "Utilities for 3D printing",
"wiki_url": "https://wiki.blender.org/index.php/Extensions:2.6/Py/"
@@ -59,101 +59,66 @@ else:
class Print3D_Scene_Props(PropertyGroup):
- export_format = EnumProperty(
- name="Format",
- description="Format type to export to",
- items=(('STL', "STL", ""),
- ('PLY', "PLY", ""),
- ('WRL', "VRML2", ""),
- ('X3D', "X3D", ""),
- ('OBJ', "OBJ", "")),
- default='STL',
- )
- use_export_texture = BoolProperty(
- name="Copy Textures",
- description="Copy textures on export to the output path",
- default=False,
- )
- use_apply_scale = BoolProperty(
- name="Apply Scale",
- description="Apply scene scale setting on export",
- default=False,
- )
- export_path = StringProperty(
- name="Export Directory",
- description="Path to directory where the files are created",
- default="//", maxlen=1024, subtype="DIR_PATH",
- )
- thickness_min = FloatProperty(
- name="Thickness",
- description="Minimum thickness",
- subtype='DISTANCE',
- default=0.001, # 1mm
- min=0.0, max=10.0,
- )
- threshold_zero = FloatProperty(
- name="Threshold",
- description="Limit for checking zero area/length",
- default=0.0001,
- precision=5,
- min=0.0, max=0.2,
- )
- angle_distort = FloatProperty(
- name="Angle",
- description="Limit for checking distorted faces",
- subtype='ANGLE',
- default=math.radians(45.0),
- min=0.0, max=math.radians(180.0),
- )
- angle_sharp = FloatProperty(
- name="Angle",
- subtype='ANGLE',
- default=math.radians(160.0),
- min=0.0, max=math.radians(180.0),
- )
- angle_overhang = FloatProperty(
- name="Angle",
- subtype='ANGLE',
- default=math.radians(45.0),
- min=0.0, max=math.radians(90.0),
- )
-
-
-# Update panel category name
-panels = (
- ui.VIEW3D_PT_Print3D_Object,
- ui.VIEW3D_PT_Print3D_Mesh,
+ export_format: EnumProperty(
+ name="Format",
+ description="Format type to export to",
+ items=(
+ ('STL', "STL", ""),
+ ('PLY', "PLY", ""),
+ ('WRL', "VRML2", ""),
+ ('X3D', "X3D", ""),
+ ('OBJ', "OBJ", ""),
+ ),
+ default='STL',
+ )
+ use_export_texture: BoolProperty(
+ name="Copy Textures",
+ description="Copy textures on export to the output path",
+ default=False,
+ )
+ use_apply_scale: BoolProperty(
+ name="Apply Scale",
+ description="Apply scene scale setting on export",
+ default=False,
+ )
+ export_path: StringProperty(
+ name="Export Directory",
+ description="Path to directory where the files are created",
+ default="//", maxlen=1024, subtype="DIR_PATH",
+ )
+ thickness_min: FloatProperty(
+ name="Thickness",
+ description="Minimum thickness",
+ subtype='DISTANCE',
+ default=0.001, # 1mm
+ min=0.0, max=10.0,
+ )
+ threshold_zero: FloatProperty(
+ name="Threshold",
+ description="Limit for checking zero area/length",
+ default=0.0001,
+ precision=5,
+ min=0.0, max=0.2,
+ )
+ angle_distort: FloatProperty(
+ name="Angle",
+ description="Limit for checking distorted faces",
+ subtype='ANGLE',
+ default=math.radians(45.0),
+ min=0.0, max=math.radians(180.0),
+ )
+ angle_sharp: FloatProperty(
+ name="Angle",
+ subtype='ANGLE',
+ default=math.radians(160.0),
+ min=0.0, max=math.radians(180.0),
+ )
+ angle_overhang: FloatProperty(
+ name="Angle",
+ subtype='ANGLE',
+ default=math.radians(45.0),
+ min=0.0, max=math.radians(90.0),
)
-
-
-def update_panels(self, context):
- try:
- for panel in panels:
- if "bl_rna" in panel.__dict__:
- bpy.utils.unregister_class(panel)
-
- for panel in panels:
- panel.bl_category = context.user_preferences.addons[__name__].preferences.category
- bpy.utils.register_class(panel)
-
- except Exception as e:
- message = "3D Print Toolbox: Updating Panel locations has failed"
- print("\n[{}]\n{}\n\nError:\n{}".format(__name__, message, e))
-
-
-class Print3D_Preferences(AddonPreferences):
- bl_idname = __name__
-
- category = StringProperty(
- name="Tab Category",
- description="Choose a name for the category of the panel",
- default="3D Printing",
- update=update_panels,
- )
-
- def draw(self, context):
- layout = self.layout
- layout.prop(self, "category")
classes = (
@@ -185,8 +150,7 @@ classes = (
operators.MESH_OT_Print3D_Export,
Print3D_Scene_Props,
- Print3D_Preferences,
- )
+)
def register():
@@ -195,8 +159,6 @@ def register():
bpy.types.Scene.print_3d = PointerProperty(type=Print3D_Scene_Props)
- update_panels(None, bpy.context)
-
def unregister():
for cls in classes: