summaryrefslogtreecommitdiffstats
path: root/src/livarot/PathOutline.cpp
diff options
context:
space:
mode:
authorAlvin Penner <penner@vaxxine.com>2017-04-20 16:29:47 +0000
committerapenner <penner@vaxxine.com>2017-04-20 16:29:47 +0000
commit7abef70f8f34d70c643d4c4f16e555097c116eef (patch)
treee15a866df80764ea5bc28ce0d3d05db226c6daeb /src/livarot/PathOutline.cpp
parentExtensions: HPGL: changed command order of cleanup commands so pen plotters r... (diff)
downloadinkscape-7abef70f8f34d70c643d4c4f16e555097c116eef.tar.gz
inkscape-7abef70f8f34d70c643d4c4f16e555097c116eef.zip
terminate line with round caps. (Bug 1680179)
Fixed bugs: - https://launchpad.net/bugs/1680179 (bzr r15626)
Diffstat (limited to 'src/livarot/PathOutline.cpp')
-rw-r--r--src/livarot/PathOutline.cpp6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/livarot/PathOutline.cpp b/src/livarot/PathOutline.cpp
index 7043469d2..c1a48d41f 100644
--- a/src/livarot/PathOutline.cpp
+++ b/src/livarot/PathOutline.cpp
@@ -158,7 +158,8 @@ void Path::Outline(Path *dest, double width, JoinType join, ButtType butt, doubl
join, butt, miter, false, false, endPos, endButt);
Geom::Point endNor=endButt.ccw();
if (butt == butt_round) {
- dest->ArcTo (endPos+width*endNor, 1.0001 * width, 1.0001 * width, 0.0, true, true);
+ dest->ArcTo (endPos+width*endButt, width, width, 0.0, false, true);
+ dest->ArcTo (endPos+width*endNor, width, width, 0.0, false, true);
} else if (butt == butt_square) {
dest->LineTo (endPos-width*endNor+width*endButt);
dest->LineTo (endPos+width*endNor+width*endButt);
@@ -175,7 +176,8 @@ void Path::Outline(Path *dest, double width, JoinType join, ButtType butt, doubl
endNor=endButt.ccw();
if (butt == butt_round) {
- dest->ArcTo (endPos+width*endNor, 1.0001 * width, 1.0001 * width, 0.0, true, true);
+ dest->ArcTo (endPos+width*endButt, width, width, 0.0, false, true);
+ dest->ArcTo (endPos+width*endNor, width, width, 0.0, false, true);
} else if (butt == butt_square) {
dest->LineTo (endPos-width*endNor+width*endButt);
dest->LineTo (endPos+width*endNor+width*endButt);