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:
authorCampbell Barton <ideasman42@gmail.com>2013-03-24 23:47:31 +0400
committerCampbell Barton <ideasman42@gmail.com>2013-03-24 23:47:31 +0400
commit2d048308c69a7671b43c246ef882f99661dd771d (patch)
treee2e7624482f7f2c9056bb822102b85b816ee6011
parent7e6e45d7a7c80798a21684c278334188cce0e501 (diff)
remove use of ob.update_from_editmode() since editmode meshes don't get access to customdata layers.
-rw-r--r--io_mesh_ply/export_ply.py3
-rw-r--r--io_mesh_uv_layout/__init__.py7
-rw-r--r--io_scene_3ds/export_3ds.py5
-rw-r--r--io_scene_obj/export_obj.py1
-rw-r--r--io_scene_vrml2/export_vrml2.py8
-rw-r--r--io_scene_x3d/export_x3d.py6
6 files changed, 20 insertions, 10 deletions
diff --git a/io_mesh_ply/export_ply.py b/io_mesh_ply/export_ply.py
index 48d1542f..4ef8b5fb 100644
--- a/io_mesh_ply/export_ply.py
+++ b/io_mesh_ply/export_ply.py
@@ -197,7 +197,8 @@ def save(operator,
if not obj:
raise Exception("Error, Select 1 active object")
- obj.update_from_editmode()
+ if bpy.ops.object.mode_set.poll():
+ bpy.ops.object.mode_set(mode='OBJECT')
if use_mesh_modifiers and obj.modifiers:
mesh = obj.to_mesh(scene, True, 'PREVIEW')
diff --git a/io_mesh_uv_layout/__init__.py b/io_mesh_uv_layout/__init__.py
index 07e9e587..dc6c05d5 100644
--- a/io_mesh_uv_layout/__init__.py
+++ b/io_mesh_uv_layout/__init__.py
@@ -172,7 +172,9 @@ class ExportUVLayout(bpy.types.Operator):
def execute(self, context):
obj = context.active_object
- obj.update_from_editmode()
+ is_editmode = (obj.mode == 'EDIT')
+ if is_editmode:
+ bpy.ops.object.mode_set(mode='OBJECT', toggle=False)
mode = self.mode
@@ -202,6 +204,9 @@ class ExportUVLayout(bpy.types.Operator):
if self.modified:
bpy.data.meshes.remove(mesh)
+ if is_editmode:
+ bpy.ops.object.mode_set(mode='EDIT', toggle=False)
+
file.close()
return {'FINISHED'}
diff --git a/io_scene_3ds/export_3ds.py b/io_scene_3ds/export_3ds.py
index 1bab7311..e7f624ac 100644
--- a/io_scene_3ds/export_3ds.py
+++ b/io_scene_3ds/export_3ds.py
@@ -997,6 +997,9 @@ def save(operator,
if global_matrix is None:
global_matrix = mathutils.Matrix()
+ if bpy.ops.object.mode_set.poll():
+ bpy.ops.object.mode_set(mode='OBJECT')
+
# Initialize the main chunk (primary):
primary = _3ds_chunk(PRIMARY)
# Add version chunk:
@@ -1025,8 +1028,6 @@ def save(operator,
objects = (ob for ob in scene.objects if ob.is_visible(scene))
for ob in objects:
- ob.update_from_editmode()
-
# get derived objects
free, derived = create_derived_objects(scene, ob)
diff --git a/io_scene_obj/export_obj.py b/io_scene_obj/export_obj.py
index 681e4534..90d69316 100644
--- a/io_scene_obj/export_obj.py
+++ b/io_scene_obj/export_obj.py
@@ -678,7 +678,6 @@ def _write(context, filepath,
scene = context.scene
# Exit edit mode before exporting, so current object states are exported properly.
- # use this over obj.update_from_editmode() because of animation export.
if bpy.ops.object.mode_set.poll():
bpy.ops.object.mode_set(mode='OBJECT')
diff --git a/io_scene_vrml2/export_vrml2.py b/io_scene_vrml2/export_vrml2.py
index 78d1e45b..29b76ddb 100644
--- a/io_scene_vrml2/export_vrml2.py
+++ b/io_scene_vrml2/export_vrml2.py
@@ -177,10 +177,16 @@ def save_object(fw, global_matrix,
assert(obj.type == 'MESH')
if use_mesh_modifiers:
- obj.update_from_editmode()
+ is_editmode = (obj.mode == 'EDIT')
+ if is_editmode:
+ bpy.ops.object.editmode_toggle()
+
me = obj.to_mesh(scene, True, 'PREVIEW', calc_tessface=False)
bm = bmesh.new()
bm.from_mesh(me)
+
+ if is_editmode:
+ bpy.ops.object.editmode_toggle()
else:
me = obj.data
if obj.mode == 'EDIT':
diff --git a/io_scene_x3d/export_x3d.py b/io_scene_x3d/export_x3d.py
index 8e2c62db..0b325044 100644
--- a/io_scene_x3d/export_x3d.py
+++ b/io_scene_x3d/export_x3d.py
@@ -1582,10 +1582,8 @@ def save(operator, context, filepath="",
bpy.path.ensure_ext(filepath, '.x3dz' if use_compress else '.x3d')
- edit_object = context.edit_object
- if edit_object:
- edit_object.update_from_editmode()
- del edit_object
+ if bpy.ops.object.mode_set.poll():
+ bpy.ops.object.mode_set(mode='OBJECT')
if use_compress:
file = gzip_open_utf8(filepath, 'w')