summaryrefslogtreecommitdiffstats
path: root/src/livarot/PathConversion.cpp
diff options
context:
space:
mode:
authorMarkus Engel <markus.engel@tum.de>2013-08-04 13:19:52 +0000
committerMarkus Engel <markus.engel@tum.de>2013-08-04 13:19:52 +0000
commitc87f9bac5947a51cac43d3487c76aac005d81af8 (patch)
treee4ee49c51388a490fa9cf789df32f2a97ef49e58 /src/livarot/PathConversion.cpp
parentCleaned up once more. (diff)
parentcatch exception by reference (diff)
downloadinkscape-c87f9bac5947a51cac43d3487c76aac005d81af8.tar.gz
inkscape-c87f9bac5947a51cac43d3487c76aac005d81af8.zip
Merged from trunk (r12465).
(bzr r11608.1.119)
Diffstat (limited to 'src/livarot/PathConversion.cpp')
-rw-r--r--src/livarot/PathConversion.cpp21
1 files changed, 6 insertions, 15 deletions
diff --git a/src/livarot/PathConversion.cpp b/src/livarot/PathConversion.cpp
index ed5f03f80..8d36dca4c 100644
--- a/src/livarot/PathConversion.cpp
+++ b/src/livarot/PathConversion.cpp
@@ -119,15 +119,12 @@ void Path::ConvertWithBackData(double treshhold)
if ( nbInterm >= 1 ) {
Geom::Point bx = curX;
- Geom::Point cx = curX;
- Geom::Point dx = curX;
+ Geom::Point dx = nData->p;
+ Geom::Point cx = 2 * bx - dx;
- dx = nData->p;
ip++;
nData = dynamic_cast<PathDescrIntermBezierTo *>(descr_cmd[ip]);
- cx = 2 * bx - dx;
-
for (int k = 0; k < nbInterm - 1; k++) {
bx = cx;
cx = dx;
@@ -323,15 +320,12 @@ void Path::Convert(double treshhold)
RecBezierTo(midX, curX, nextX, treshhold, 8);
} else if ( nbInterm > 1 ) {
Geom::Point bx = curX;
- Geom::Point cx = curX;
- Geom::Point dx = curX;
+ Geom::Point dx = nData->p;
+ Geom::Point cx = 2 * bx - dx;
- dx = nData->p;
ip++;
nData = dynamic_cast<PathDescrIntermBezierTo *>(descr_cmd[ip]);
- cx = 2 * bx - dx;
-
for (int k = 0; k < nbInterm - 1; k++) {
bx = cx;
cx = dx;
@@ -565,15 +559,12 @@ void Path::ConvertEvenLines(double treshhold)
RecBezierTo(midX, curX, nextX, treshhold, 8, 4 * treshhold);
} else if ( nbInterm > 1 ) {
Geom::Point bx = curX;
- Geom::Point cx = curX;
- Geom::Point dx = curX;
+ Geom::Point dx = nData->p;
+ Geom::Point cx = 2 * bx - dx;
- dx = nData->p;
ip++;
nData = dynamic_cast<PathDescrIntermBezierTo *>(descr_cmd[ip]);
- cx = 2 * bx - dx;
-
for (int k = 0; k < nbInterm - 1; k++) {
bx = cx;
cx = dx;