summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/livarot/PathOutline.cpp10
1 files changed, 5 insertions, 5 deletions
diff --git a/src/livarot/PathOutline.cpp b/src/livarot/PathOutline.cpp
index d170e5d3a..f00798c8a 100644
--- a/src/livarot/PathOutline.cpp
+++ b/src/livarot/PathOutline.cpp
@@ -465,15 +465,15 @@ void Path::SubContractOutline(int off, int num_pd,
{
PathDescrLineTo* nData = dynamic_cast<PathDescrLineTo*>(descr_cmd[curD]);
nextX = nData->p;
+ // et on avance
+ TangentOnSegAt (0.0, curX, *nData, stPos, stTgt, stTle);
+ TangentOnSegAt (1.0, curX, *nData, enPos, enTgt, enTle);
// test de nullité du segment
if (IsNulCurve (descr_cmd, curD, curX))
{
- curP++;
- continue;
+ stTgt = dest->descr_cmd.size() ? Geom::Point(1, 0) : Geom::Point(-1, 0); // reverse direction
+ enTgt = stTgt;
}
- // et on avance
- TangentOnSegAt (0.0, curX, *nData, stPos, stTgt, stTle);
- TangentOnSegAt (1.0, curX, *nData, enPos, enTgt, enTle);
stNor=stTgt.cw();
enNor=enTgt.cw();