[Bf-extensions-cvs] SVN commit: /data/svn/bf-extensions [4383] trunk/py/scripts/addons/ io_scene_ms3d: fix: invalid header warning; changed: verbose modes from bool to enum; changed: position of update scene;
Alexander Nussbaumer
alpha-beta-release at gmx.net
Sun Mar 17 19:29:44 CET 2013
Revision: 4383
http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-extensions&revision=4383
Author: beta-tester
Date: 2013-03-17 18:29:43 +0000 (Sun, 17 Mar 2013)
Log Message:
-----------
fix: invalid header warning; changed: verbose modes from bool to enum; changed: position of update scene;
Modified Paths:
--------------
trunk/py/scripts/addons/io_scene_ms3d/__init__.py
trunk/py/scripts/addons/io_scene_ms3d/ms3d_export.py
trunk/py/scripts/addons/io_scene_ms3d/ms3d_import.py
trunk/py/scripts/addons/io_scene_ms3d/ms3d_spec.py
trunk/py/scripts/addons/io_scene_ms3d/ms3d_strings.py
trunk/py/scripts/addons/io_scene_ms3d/ms3d_ui.py
trunk/py/scripts/addons/io_scene_ms3d/ms3d_utils.py
Modified: trunk/py/scripts/addons/io_scene_ms3d/__init__.py
===================================================================
--- trunk/py/scripts/addons/io_scene_ms3d/__init__.py 2013-03-17 18:23:59 UTC (rev 4382)
+++ trunk/py/scripts/addons/io_scene_ms3d/__init__.py 2013-03-17 18:29:43 UTC (rev 4383)
@@ -23,7 +23,7 @@
'description': "Import / Export MilkShape3D MS3D files"\
" (conform with MilkShape3D v1.8.4)",
'author': "Alexander Nussbaumer",
- 'version': (0, 96, 0),
+ 'version': (0, 97, 0),
'blender': (2, 66, 0),
'location': "File > Import & File > Export",
'warning': "",
Modified: trunk/py/scripts/addons/io_scene_ms3d/ms3d_export.py
===================================================================
--- trunk/py/scripts/addons/io_scene_ms3d/ms3d_export.py 2013-03-17 18:23:59 UTC (rev 4382)
+++ trunk/py/scripts/addons/io_scene_ms3d/ms3d_export.py 2013-03-17 18:29:43 UTC (rev 4383)
@@ -94,7 +94,7 @@
"""
def __init__(self,
report,
- verbose=False,
+ verbose='NONE',
use_blender_names=True,
use_blender_materials=False,
apply_transform=True,
@@ -142,14 +142,17 @@
try:
# write ms3d file to disk
with io.FileIO(filepath, "wb") as raw_io:
- ms3d_model.write(raw_io)
+ debug_out = ms3d_model.write(raw_io)
raw_io.flush()
raw_io.close()
+
+ if self.options_verbose in Ms3dUi.VERBOSE_MAXIMAL:
+ print(debug_out)
finally:
pass
# if option is set, this time will enlargs the io time
- if self.options_verbose:
+ if self.options_verbose in Ms3dUi.VERBOSE_MAXIMAL:
ms3d_model.print_internal()
post_setup_environment(self, blender_context)
@@ -165,16 +168,18 @@
blender_context.user_preferences.edit.use_global_undo = self.undo
is_valid, statistics = ms3d_model.is_valid()
- print()
- print("##########################################################")
- print("Export from Blender to MS3D")
- print(statistics)
- print("##########################################################")
+ if self.options_verbose in Ms3dUi.VERBOSE_NORMAL:
+ print()
+ print("##########################################################")
+ print("Export from Blender to MS3D")
+ print(statistics)
+ print("##########################################################")
except Exception:
type, value, traceback = exc_info()
- print("write - exception in try block\n type: '{0}'\n"
- " value: '{1}'".format(type, value, traceback))
+ if self.options_verbose in Ms3dUi.VERBOSE_NORMAL:
+ print("write - exception in try block\n type: '{0}'\n"
+ " value: '{1}'".format(type, value, traceback))
if t2 is None:
t2 = time()
@@ -185,8 +190,9 @@
pass
t3 = time()
- print(ms3d_str['SUMMARY_EXPORT'].format(
- (t3 - t1), (t2 - t1), (t3 - t2)))
+ if self.options_verbose in Ms3dUi.VERBOSE_NORMAL:
+ print(ms3d_str['SUMMARY_EXPORT'].format(
+ (t3 - t1), (t2 - t1), (t3 - t2)))
return {"FINISHED"}
Modified: trunk/py/scripts/addons/io_scene_ms3d/ms3d_import.py
===================================================================
--- trunk/py/scripts/addons/io_scene_ms3d/ms3d_import.py 2013-03-17 18:23:59 UTC (rev 4382)
+++ trunk/py/scripts/addons/io_scene_ms3d/ms3d_import.py 2013-03-17 18:29:43 UTC (rev 4383)
@@ -87,7 +87,7 @@
"""
def __init__(self,
report,
- verbose=False,
+ verbose='NONE',
use_extended_normal_handling=False,
use_animation=True,
use_quaternion_rotation=False,
@@ -131,13 +131,16 @@
# open ms3d file
with io.FileIO(filepath, 'rb') as raw_io:
# read and inject ms3d data from disk to internal structure
- ms3d_model.read(raw_io)
+ debug_out = ms3d_model.read(raw_io)
raw_io.close()
+
+ if self.options_verbose in Ms3dUi.VERBOSE_MAXIMAL:
+ print(debug_out)
finally:
pass
# if option is set, this time will enlargs the io time
- if self.options_verbose:
+ if self.options_verbose in Ms3dUi.VERBOSE_MAXIMAL:
ms3d_model.print_internal()
t2 = time()
@@ -148,23 +151,20 @@
# inject ms3d data to blender
self.to_blender(blender_context, ms3d_model)
- blender_scene = blender_context.scene
-
- # finalize/restore environment
- blender_scene.update()
-
post_setup_environment(self, blender_context)
- print()
- print("##########################################################")
- print("Import from MS3D to Blender")
- print(statistics)
- print("##########################################################")
+ if self.options_verbose in Ms3dUi.VERBOSE_NORMAL:
+ print()
+ print("##########################################################")
+ print("Import from MS3D to Blender")
+ print(statistics)
+ print("##########################################################")
except Exception:
type, value, traceback = exc_info()
- print("read - exception in try block\n type: '{0}'\n"
- " value: '{1}'".format(type, value, traceback))
+ if self.options_verbose in Ms3dUi.VERBOSE_NORMAL:
+ print("read - exception in try block\n type: '{0}'\n"
+ " value: '{1}'".format(type, value, traceback))
if t2 is None:
t2 = time()
@@ -175,52 +175,14 @@
pass
t3 = time()
- print(ms3d_str['SUMMARY_IMPORT'].format(
- (t3 - t1), (t2 - t1), (t3 - t2)))
+ if self.options_verbose in Ms3dUi.VERBOSE_NORMAL:
+ print(ms3d_str['SUMMARY_IMPORT'].format(
+ (t3 - t1), (t2 - t1), (t3 - t2)))
+
return {"FINISHED"}
- def internal_read(self, blender_context, raw_io):
- try:
- # setup environment
- pre_setup_environment(self, blender_context)
-
- try:
- ms3d_model.read(raw_io)
- finally:
- pass
-
- # if option is set, this time will enlargs the io time
- if self.options_verbose:
- ms3d_model.print_internal()
-
- is_valid, statistics = ms3d_model.is_valid()
-
- if is_valid:
- # inject ms3d data to blender
- blender_empty_object, blender_mesh_object = self.to_blender(blender_context, ms3d_model)
-
- blender_scene = blender_context.scene
-
- # finalize/restore environment
- blender_scene.update()
-
- post_setup_environment(self, blender_context)
-
- except Exception:
- type, value, traceback = exc_info()
- print("read - exception in try block\n type: '{0}'\n"
- " value: '{1}'".format(type, value, traceback))
-
- raise
-
- else:
- pass
-
- return blender_empty_object, blender_mesh_object
-
-
###########################################################################
def to_blender(self, blender_context, ms3d_model):
blender_mesh_object = self.create_geometry(blender_context, ms3d_model)
@@ -629,7 +591,7 @@
# end BMesh stuff
####################################################
- blender_mesh.validate(self.options_verbose)
+ blender_mesh.validate(self.options_verbose in Ms3dUi.VERBOSE_MAXIMAL)
return blender_mesh_object
Modified: trunk/py/scripts/addons/io_scene_ms3d/ms3d_spec.py
===================================================================
--- trunk/py/scripts/addons/io_scene_ms3d/ms3d_spec.py 2013-03-17 18:23:59 UTC (rev 4382)
+++ trunk/py/scripts/addons/io_scene_ms3d/ms3d_spec.py 2013-03-17 18:29:43 UTC (rev 4383)
@@ -290,6 +290,8 @@
if not buffer:
raise EOFError()
eol = buffer.find(Ms3dSpec.STRING_TERMINATION)
+ if eol < 0:
+ eol = len(buffer)
register_error(Ms3dSpec.STRING_MS3D_REPLACE, Ms3dIo.ms3d_replace)
s = buffer[:eol].decode(encoding=Ms3dSpec.STRING_ENCODING, errors=Ms3dSpec.STRING_ERROR)
return s
@@ -1733,13 +1735,15 @@
add content to blender scene
"""
+ debug_out = []
+
self.header.read(raw_io)
if (self.header != Ms3dHeader()):
- print("\nwarning, invalid file header")
+ debug_out.append("\nwarning, invalid file header\n")
_number_vertices = Ms3dIo.read_word(raw_io)
if (_number_vertices > Ms3dSpec.MAX_VERTICES):
- print("\nwarning, invalid count: number_vertices: {}".format(
+ debug_out.append("\nwarning, invalid count: number_vertices: {}\n".format(
_number_vertices))
self._vertices = []
for i in range(_number_vertices):
@@ -1747,7 +1751,7 @@
_number_triangles = Ms3dIo.read_word(raw_io)
if (_number_triangles > Ms3dSpec.MAX_TRIANGLES):
- print("\nwarning, invalid count: number_triangles: {}".format(
+ debug_out.append("\nwarning, invalid count: number_triangles: {}\n".format(
_number_triangles))
self._triangles = []
for i in range(_number_triangles):
@@ -1755,7 +1759,7 @@
_number_groups = Ms3dIo.read_word(raw_io)
if (_number_groups > Ms3dSpec.MAX_GROUPS):
- print("\nwarning, invalid count: number_groups: {}".format(
+ debug_out.append("\nwarning, invalid count: number_groups: {}\n".format(
_number_groups))
@@ Diff output truncated at 10240 characters. @@
More information about the Bf-extensions-cvs
mailing list