app: add support for cairo arcs

This commit is contained in:
Michael Natterer 2010-09-24 18:42:36 +02:00
parent 4e5d47dcbf
commit 67708a65a1
1 changed files with 21 additions and 0 deletions

View File

@ -35,6 +35,7 @@
#include "vectors/gimpvectors.h"
#include "display/gimpcanvas.h"
#include "display/gimpcanvasarc.h"
#include "display/gimpcanvasboundary.h"
#include "display/gimpcanvascorner.h"
#include "display/gimpcanvasguide.h"
@ -630,6 +631,26 @@ gimp_draw_tool_draw_arc (GimpDrawTool *draw_tool,
g_return_if_fail (GIMP_IS_DRAW_TOOL (draw_tool));
if (draw_tool->use_cairo)
{
GimpCanvasItem *item;
gdouble a1, a2;
a1 = (gdouble) angle1 / 64.0 / 180.0 * G_PI;
a2 = (gdouble) angle2 / 64.0 / 180.0 * G_PI;
item = gimp_canvas_arc_new (x + width / 2.0,
y + height / 2.0,
width / 2.0,
height / 2.0,
a1, a2,
FALSE);
draw_tool->items = g_list_append (draw_tool->items, item);
return;
}
shell = gimp_display_get_shell (draw_tool->display);
gimp_display_shell_transform_xy_f (shell,