Click here to Skip to main content
13,000,017 members (50,669 online)
Rate this:
Please Sign up or sign in to vote.
See more:

I have a question about using "GraphicsPath.AddArc".

There is no problem to draw an arc when bound rectangle is not rotated.

Path.AddArc( Center.getX(), Center.getY(), Radius, Radius, startAngle, sweepAngle );

But when the rectangle is rotated with an angle, the arc will be wrong.

How can I correctly using it?

Posted 22-Dec-10 22:20pm
Updated 22-Dec-10 22:34pm

1 solution

Rate this: bad
Please Sign up or sign in to vote.

Solution 1

They do not need to worry about a rotation because all transformation will be added after the path creating:

    // Create a RoundedRectangle:
    GraphicsPath path = RoundedRectangle.Create(20, 20, 100, 100, 15);
    // Draw the created RoundedRectangle:
    e.Graphics.FillPath(Brushes.Blue, path);
    // Rotate it clockwise 45 degrees about its center:
    Matrix matrix = new Matrix();
    matrix.RotateAt(45, new Point(70,70));
    // Draw the rotated RoundedRectangle:
    e.Graphics.FillPath(Brushes.Blue, path);

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)

  Print Answers RSS
Top Experts
Last 24hrsThis month

Advertise | Privacy | Mobile
Web02 | 2.8.170624.1 | Last Updated 6 Jan 2011
Copyright © CodeProject, 1999-2017
All Rights Reserved. Terms of Service
Layout: fixed | fluid

CodeProject, 503-250 Ferrand Drive Toronto Ontario, M3C 3G8 Canada +1 416-849-8900 x 100