diff options
Diffstat (limited to 'io_import_dxf/__init__.py')
-rw-r--r-- | io_import_dxf/__init__.py | 26 |
1 files changed, 15 insertions, 11 deletions
diff --git a/io_import_dxf/__init__.py b/io_import_dxf/__init__.py index e3cfa99b..fae5b173 100644 --- a/io_import_dxf/__init__.py +++ b/io_import_dxf/__init__.py @@ -22,6 +22,7 @@ import bpy import os from bpy.props import StringProperty, BoolProperty, EnumProperty, IntProperty, FloatProperty from .dxfimport.do import Do, Indicator +from .dxfgrabber.headersection import MinVersionError from .transverse_mercator import TransverseMercator @@ -109,17 +110,20 @@ def read(report, filename, obj_merge=BY_LAYER, import_text=True, import_light=Tr thicknessWidth=True, but_group_by_att=True, dxf_unit_scale=1.0): # import dxf and export nurbs types to sat/sab files # because that's how autocad stores nurbs types in a dxf... - do = Do(filename, obj_merge, import_text, import_light, export_acis, merge_lines, do_bbox, block_rep, recenter, - projDXF, projSCN, thicknessWidth, but_group_by_att, dxf_unit_scale) - errors = do.entities(os.path.basename(filename).replace(".dxf", ""), new_scene) - - # display errors - for error in errors: - report('ERROR', error) - - # inform the user about the sat/sab files - if len(do.acis_files) > 0: - report('INFO', "Exported %d NURBS objects to sat/sab files next to your DXF file" % len(do.acis_files)) + try: + do = Do(filename, obj_merge, import_text, import_light, export_acis, merge_lines, do_bbox, block_rep, recenter, + projDXF, projSCN, thicknessWidth, but_group_by_att, dxf_unit_scale) + errors = do.entities(os.path.basename(filename).replace(".dxf", ""), new_scene) + + # display errors + for error in errors: + report({'ERROR', 'INFO'}, error) + + # inform the user about the sat/sab files + if len(do.acis_files) > 0: + report({'INFO'}, "Exported %d NURBS objects to sat/sab files next to your DXF file" % len(do.acis_files)) + except MinVersionError as minv: + report({'ERROR', 'INFO'}, str(minv)) def display_groups_in_outliner(): |