From d86f97d964603fd755c524f1e9033606e9c586ea Mon Sep 17 00:00:00 2001 From: cxl Date: Tue, 4 Sep 2018 11:42:40 +0000 Subject: [PATCH] CtrlCore: GTK DrawArc fixed to draw ellipse (thanks mdelfede) git-svn-id: svn://ultimatepp.org/upp/trunk@12245 f0d560ea-af0d-0410-9eb7-867de7ffcac7 --- uppsrc/CtrlCore/GtkDrawOp.cpp | 3 +++ 1 file changed, 3 insertions(+) diff --git a/uppsrc/CtrlCore/GtkDrawOp.cpp b/uppsrc/CtrlCore/GtkDrawOp.cpp index 5d40fbd8a..15ed42b81 100644 --- a/uppsrc/CtrlCore/GtkDrawOp.cpp +++ b/uppsrc/CtrlCore/GtkDrawOp.cpp @@ -291,6 +291,9 @@ void SystemDraw::DrawArcOp(const Rect& rc, Point start, Point end, int width, Co Pointf center = Pointf(rc.TopLeft()) + radius; double ang1 = Bearing((Pointf(start) - center) / radius); double ang2 = Bearing((Pointf(end) - center) / radius); + + if(ang1 == ang2) + ang1 -= 0.000001; cairo_move_to(cr, center.x + radius.cx * cos(ang1), center.y + radius.cy * sin(ang1)); cairo_save(cr);