Definition: |
include pGUI.e
cdCanvasArc(cdCanvas hCdCanvas, atom xc, yc, w, h, a1, a2) |
Description: |
Draws the arc of an ellipse aligned with the axis, using the current foreground color and line width and style.
The coordinate (xc,yc) defines the center of the ellipse. Dimensions w and h define the elliptic axes X and Y, respectively. Angles angle1 and angle2 are in degrees and oriented counter-clockwise, ie East/3:00 is 0 (or 360), North/12:00 is 90, West/9:00 is 180 and South/6:00 is 270. They define the arc start and end, but they are not the angle relative to the center, except when w==h and the ellipse is reduced to a circle. The arc starts at the point (xc+(w/2)*cos(angle1), yc+(h/2)*sin(angle1)) and ends at (xc+(w/2)*cos(angle2), yc+(h/2)*sin(angle2)). A complete ellipse can be drawn using 0 and 360 as the angles. If angle2 is less than angle1 it will be increased by 360 until it is greater than angle1. The angles are specified so if the size of the ellipse (w x h) is changed, its shape is preserved. So the angles relative to the center are dependent from the ellipse size. The actual angle can be obtained using rangle = atan2((h/2)*sin(angle), (w/2)*cos(angle)). To specify the angle in radians, you can use the definition CD_RAD2DEG to multiply the value in radians before passing the angle to CD. Arc Parameters ![]() |