# gc:drawArc

gc:**drawArc** is a function that is part of gc (Graphics Context).

Draws an arc in the rectangle with upper left corner (x,y) and pixel *width* and *height*. The arc is drawn beginning at *startAngle* degrees and turns over *turnAngle* degrees.

Zero degrees points to the right and 90 degrees points up (standard mathematical practice but worth mentioning since the y axis is inverted).

This has been introduced in TI-Nspire OS 3.0 (*Changes*).

## Syntax

gc:**drawArc**(x, y, width, height, start angle, turn angle)

Parameter | Type | Description |
---|---|---|

number | The x-coordinate of the upper-left point | |

number | The x-coordinate of the upper-left point | |

number | Width of the rectangle containing the arc | |

number | Height of the rectangle containing the arc | |

number | The starting angle of the arc | |

number | The angle over which the arc turns |

In this syntax *turnAngle* can be negative. This means the arc will be drawn clockwise, whereas a positive number results in an arc turning counterclockwise. (Standard mathematical practice as well.)

## Examples

`gc:drawArc(10, 10, 20, 30, 0, 120)`

The syntax above draws an arc from the right to the point turned 120 degrees.

`gc:drawArc(50, 50, 25, 25, 90, 180)`

The syntax above draws a semicircle from the top to the bottom, turning counterclockwise while doing so. Resulting in the semicircle being on the left side.

`gc:drawArc(50, 50, 25, 25, 90, -180)`

The syntax above draws a semicircle as well. Again from the top to the bottom. This time however, the routine will turn the arc clockwise, resulting in the semicircle being on the right side.

## Good to know

To draw a circle, the width and height must be equal length and the turning angle must be 360. If width and height are different lengths, this routine will draw an oval. It is standard procedure to set the starting angle at 0 degrees. However, this is not necessary.

Any number over 360 set for *startAngle* will roll back to be within the domain of [0,360].

Any number over 360 set for *turnAngle* will have no influence. All numbers higher than 360 will result in a circle.