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

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCampbell Barton <ideasman42@gmail.com>2014-10-19 21:09:18 +0400
committerCampbell Barton <ideasman42@gmail.com>2014-10-19 21:09:18 +0400
commitdd2525c3627344f4500d6d8292a741ce80c6bc44 (patch)
tree748dbeebab8a5135afe2f9b69776b51cdda865c2 /release
parent923423e4cdc05b4943a23e0b8a7ae16f9c13973e (diff)
Revert "Freestyle: lazy load 'export_svg'"
This reverts commit c35a649a0a6c3c07bb8d56caba680887f726b9e9.
Diffstat (limited to 'release')
-rw-r--r--release/scripts/freestyle/modules/export_svg.py16
-rw-r--r--release/scripts/startup/freestyle_builtins.py38
2 files changed, 17 insertions, 37 deletions
diff --git a/release/scripts/freestyle/modules/export_svg.py b/release/scripts/freestyle/modules/export_svg.py
index 9d6e13f4bd6..777fc736d20 100644
--- a/release/scripts/freestyle/modules/export_svg.py
+++ b/release/scripts/freestyle/modules/export_svg.py
@@ -23,6 +23,7 @@ import bpy
import xml.etree.cElementTree as et
from bpy.path import abspath
+from bpy.app.handlers import persistent
from bpy_extras.object_utils import world_to_camera_view
from freestyle.types import StrokeShader, BinaryPredicate1D, Interface0DIterator
@@ -265,10 +266,12 @@ def indent_xml(elem, level=0, indentsize=4):
# - callbacks - #
-# called from: bpy.app.handlers.render_init
+@persistent
def svg_export_header(scene):
- # create new file (overwrite existing)
render = scene.render
+ if not (render.use_freestyle and render.use_svg_export):
+ return
+ # create new file (overwrite existing)
width, height = render.resolution_x, render.resolution_y
scale = render.resolution_percentage / 100
@@ -280,15 +283,16 @@ def svg_export_header(scene):
print("SVG export: invalid path")
-# called from: bpy.app.handlers.render_complete
+@persistent
def svg_export_animation(scene):
- # makes an animation of the exported SVG file
+ """makes an animation of the exported SVG file """
render = scene.render
- write_animation(abspath(render.svg_path), scene.frame_start, render.fps)
+ if render.use_freestyle and render.use_svg_export and render.svg_mode == 'ANIMATION':
+ write_animation(abspath(render.svg_path), scene.frame_start, render.fps)
def write_animation(filepath, frame_begin, fps=25):
- # Adds animate tags to the specified file.
+ """Adds animate tags to the specified file."""
tree = et.parse(filepath)
root = tree.getroot()
diff --git a/release/scripts/startup/freestyle_builtins.py b/release/scripts/startup/freestyle_builtins.py
index b6493e86979..25d30771e39 100644
--- a/release/scripts/startup/freestyle_builtins.py
+++ b/release/scripts/startup/freestyle_builtins.py
@@ -20,39 +20,15 @@
import bpy
-if bpy.app.build_options.freestyle:
- from bpy.app.handlers import persistent
+from export_svg import svg_export_header, svg_export_animation
- @persistent
- def freestyle_render_init(scene):
- render = scene.render
- if render.use_freestyle:
- if render.use_svg_export:
- from export_svg import svg_export_header
- svg_export_header(scene)
+def register():
+ bpy.app.handlers.render_init.append(svg_export_header)
+ bpy.app.handlers.render_complete.append(svg_export_animation)
- @persistent
- def freestyle_render_complete(scene):
- render = scene.render
- if render.use_freestyle:
- if render.use_svg_export and render.svg_mode == 'ANIMATION':
- from export_svg import svg_export_animation
- svg_export_animation(scene)
-
- def register():
- bpy.app.handlers.render_init.append(freestyle_render_init)
- bpy.app.handlers.render_complete.append(freestyle_render_complete)
-
- def unregister():
- bpy.app.handlers.render_init.remove(freestyle_render_init)
- bpy.app.handlers.render_complete.remove(freestyle_render_complete)
-
-else:
- def register():
- pass
-
- def unregister():
- pass
+def unregister():
+ bpy.app.handlers.render_init.remove(svg_export_header)
+ bpy.app.handlers.render_complete.remove(svg_export_animation)
if __name__ == '__main__':
register()