summaryrefslogtreecommitdiffstats
path: root/src/dyna-draw-context.cpp
diff options
context:
space:
mode:
authorJohan B. C. Engelen <jbc.engelen@swissonline.ch>2008-07-08 17:55:15 +0000
committerjohanengelen <johanengelen@users.sourceforge.net>2008-07-08 17:55:15 +0000
commitcfb555a0a5fe43e44b9f9725fe64d68b9a2f5eef (patch)
tree63c3f6a7da12fbe8564789cf616422c80ee16c32 /src/dyna-draw-context.cpp
parentpatch by FreqMod for bug 246389 (diff)
downloadinkscape-cfb555a0a5fe43e44b9f9725fe64d68b9a2f5eef.tar.gz
inkscape-cfb555a0a5fe43e44b9f9725fe64d68b9a2f5eef.zip
* 2geomify polygon svg writing
* 2geomify caligraphy and erasertool svg writing (bzr r6228)
Diffstat (limited to 'src/dyna-draw-context.cpp')
-rw-r--r--src/dyna-draw-context.cpp12
1 files changed, 5 insertions, 7 deletions
diff --git a/src/dyna-draw-context.cpp b/src/dyna-draw-context.cpp
index 68bb2f163..8db9cb2e1 100644
--- a/src/dyna-draw-context.cpp
+++ b/src/dyna-draw-context.cpp
@@ -52,6 +52,7 @@
#include "libnr/nr-path.h"
#include "libnr/nr-matrix-ops.h"
#include "libnr/nr-scale-translate-ops.h"
+#include "libnr/nr-convert2geom.h"
#include "xml/repr.h"
#include "context-fns.h"
#include "sp-item.h"
@@ -65,7 +66,8 @@
#include "display/canvas-bpath.h"
#include "display/canvas-arena.h"
#include "livarot/Shape.h"
-#include "2geom/isnan.h"
+#include <2geom/isnan.h>
+#include <2geom/pathvector.h>
#include "dyna-draw-context.h"
@@ -971,9 +973,6 @@ set_to_accumulated(SPDynaDrawContext *dc, bool unionize)
SPDesktop *desktop = SP_EVENT_CONTEXT(dc)->desktop;
if (!dc->accumulated->is_empty()) {
- NArtBpath *abp;
- gchar *str;
-
if (!dc->repr) {
/* Create object */
Inkscape::XML::Document *xml_doc = sp_document_repr_doc(desktop->doc());
@@ -989,10 +988,9 @@ set_to_accumulated(SPDynaDrawContext *dc, bool unionize)
item->transform = SP_ITEM(desktop->currentRoot())->getRelativeTransform(desktop->currentLayer());
item->updateRepr();
}
- abp = nr_artpath_affine(dc->accumulated->get_bpath(), sp_desktop_dt2root_affine(desktop));
- str = sp_svg_write_path(abp);
+ Geom::PathVector pathv = dc->accumulated->get_pathvector() * to_2geom(sp_desktop_dt2root_affine(desktop));
+ gchar *str = sp_svg_write_path(pathv);
g_assert( str != NULL );
- g_free(abp);
dc->repr->setAttribute("d", str);
g_free(str);