arc#
arc()
Description#
Draw an arc to the screen. If called with only x
, y
, w
, h
, start
and
stop
, the arc will be drawn and filled as an open pie segment. If a mode
parameter is provided, the arc will be filled like an open semi-circle
(OPEN
), a closed semi-circle (CHORD
), or as a closed pie segment (PIE
).
The origin may be changed with the ellipse_mode()
function.
The arc is always drawn clockwise from wherever start falls to wherever
stop falls on the ellipse. Adding or subtracting TWO_PI
to either angle
does not change where they fall. If both start and stop fall at the same
place, a full ellipse will be drawn. Be aware that the y-axis increases in
the downward direction, therefore angles are measured clockwise from the
positive x-direction (“3 o’clock”).
Examples#
from proceso import Sketch
p5 = Sketch()
p5.describe(
"Shattered outline of ellipse with a quarter of a white circle bottom-right"
)
p5.arc(50, 55, 50, 50, 0, p5.HALF_PI)
p5.no_fill()
p5.arc(50, 55, 60, 60, p5.HALF_PI, p5.PI)
p5.arc(50, 55, 70, 70, p5.PI, p5.PI + p5.QUARTER_PI)
p5.arc(50, 55, 80, 80, p5.PI + p5.QUARTER_PI, p5.TWO_PI)
from proceso import Sketch
p5 = Sketch()
p5.describe("White ellipse with top right quarter missing")
p5.arc(50, 50, 80, 80, 0, p5.PI + p5.QUARTER_PI)
from proceso import Sketch
p5 = Sketch()
p5.describe("White ellipse with black outline with top right missing")
p5.arc(50, 50, 80, 80, 0, p5.PI + p5.QUARTER_PI, p5.OPEN)
from proceso import Sketch
p5 = Sketch()
p5.describe("White open arc with black outline with top right missing")
p5.arc(50, 50, 80, 80, 0, p5.PI + p5.QUARTER_PI, p5.CHORD)
from proceso import Sketch
p5 = Sketch()
p5.describe(
"White ellipse with top right quarter missing with black outline around the shape"
)
p5.arc(50, 50, 80, 80, 0, p5.PI + p5.QUARTER_PI, p5.PIE)
Syntax#
arc(x, y, w, h, start, stop, [mode], [detail])
Parameters#
x: float
x-coordinate of the arc’s ellipse.
y: float
y-coordinate of the arc’s ellipse.
w: float
Width of the arc’s ellipse by default.
h: float
Height of the arc’s ellipse by default.
start: float
Angle to start the arc, specified in radians.
stop: float
Angle to stop the arc, specified in radians.
[mode]: str
Optional parameter to determine the way of drawing the arc. Either CHORD, PIE or OPEN.
[detail]: int
Optional parameter for WebGL mode only. This is to specify the number of vertices that makes up the perimeter of the arc. Default value is 25. Won’t draw a stroke for a detail of more than 50.