summaryrefslogtreecommitdiffstats
path: root/src/extension/internal/pov-out.cpp
diff options
context:
space:
mode:
authorJabier Arraiza Cenoz <jabier.arraiza@marker.es>2016-11-05 21:29:03 +0000
committerjabiertxof <info@marker.es>2016-11-05 21:29:03 +0000
commit647b3ccad1fd3b178e92341fdc92fd276a234dff (patch)
tree8888f18c3f1455b6a182c90063a8edfbc0a96d54 /src/extension/internal/pov-out.cpp
parentChange modifier to enter rotate mode from SHIFT to CONTROL (diff)
downloadinkscape-647b3ccad1fd3b178e92341fdc92fd276a234dff.tar.gz
inkscape-647b3ccad1fd3b178e92341fdc92fd276a234dff.zip
Add exporters
(bzr r15142.1.32)
Diffstat (limited to 'src/extension/internal/pov-out.cpp')
-rw-r--r--src/extension/internal/pov-out.cpp13
1 files changed, 10 insertions, 3 deletions
diff --git a/src/extension/internal/pov-out.cpp b/src/extension/internal/pov-out.cpp
index 8df883069..03a2ecd62 100644
--- a/src/extension/internal/pov-out.cpp
+++ b/src/extension/internal/pov-out.cpp
@@ -616,11 +616,13 @@ void PovOutput::reset()
void PovOutput::saveDocument(SPDocument *doc, gchar const *filename_utf8)
{
reset();
-
+ doc->getRoot()->c2p = doc->getRoot()->rotation.inverse() * doc->getRoot()->c2p;
+ doc->ensureUpToDate();
//###### SAVE IN POV FORMAT TO BUFFER
//# Lets do the curves first, to get the stats
if (!doTree(doc))
{
+ doc->getRoot()->c2p *= doc->getRoot()->rotation;
err("Could not output curves for %s", filename_utf8);
return;
}
@@ -630,6 +632,7 @@ void PovOutput::saveDocument(SPDocument *doc, gchar const *filename_utf8)
if (!doHeader())
{
+ doc->getRoot()->c2p *= doc->getRoot()->rotation;
err("Could not write header for %s", filename_utf8);
return;
}
@@ -638,6 +641,7 @@ void PovOutput::saveDocument(SPDocument *doc, gchar const *filename_utf8)
if (!doTail())
{
+ doc->getRoot()->c2p *= doc->getRoot()->rotation;
err("Could not write footer for %s", filename_utf8);
return;
}
@@ -648,9 +652,11 @@ void PovOutput::saveDocument(SPDocument *doc, gchar const *filename_utf8)
//###### WRITE TO FILE
Inkscape::IO::dump_fopen_call(filename_utf8, "L");
FILE *f = Inkscape::IO::fopen_utf8name(filename_utf8, "w");
- if (!f)
+ if (!f){
+ doc->getRoot()->c2p *= doc->getRoot()->rotation;
return;
-
+ }
+
for (String::iterator iter = outbuf.begin() ; iter!=outbuf.end(); ++iter)
{
int ch = *iter;
@@ -658,6 +664,7 @@ void PovOutput::saveDocument(SPDocument *doc, gchar const *filename_utf8)
}
fclose(f);
+ doc->getRoot()->c2p *= doc->getRoot()->rotation;
}