Difference between revisions of "love.graphics.arc"
(Updated for 0.10.1) |
(→Drawing a rounded borders rectangle) |
||
(5 intermediate revisions by 4 users not shown) | |||
Line 3: | Line 3: | ||
== Function == | == Function == | ||
− | Draws an arc using the "pie" [[ | + | Draws an arc using the "pie" [[ArcType]]. |
=== Synopsis === | === Synopsis === | ||
<source lang="lua"> | <source lang="lua"> | ||
Line 24: | Line 24: | ||
=== Synopsis === | === Synopsis === | ||
<source lang="lua"> | <source lang="lua"> | ||
− | love.graphics.arc( drawmode, | + | love.graphics.arc( drawmode, arctype, x, y, radius, angle1, angle2, segments ) |
</source> | </source> | ||
=== Arguments === | === Arguments === | ||
{{param|DrawMode|drawmode|How to draw the arc.}} | {{param|DrawMode|drawmode|How to draw the arc.}} | ||
− | {{param| | + | {{param|ArcType|arctype|The type of arc to draw.}} |
{{param|number|x|The position of the center along x-axis.}} | {{param|number|x|The position of the center along x-axis.}} | ||
{{param|number|y|The position of the center along y-axis.}} | {{param|number|y|The position of the center along y-axis.}} | ||
Line 49: | Line 49: | ||
pacwidth = math.pi / 6 -- size of his mouth | pacwidth = math.pi / 6 -- size of his mouth | ||
function love.draw( ) | function love.draw( ) | ||
− | love.graphics.setColor( | + | love.graphics.setColor( 1, 1, 0 ) -- pacman needs to be yellow |
love.graphics.arc( "fill", 400, 300, 100, pacwidth, (math.pi * 2) - pacwidth ) | love.graphics.arc( "fill", 400, 300, 100, pacwidth, (math.pi * 2) - pacwidth ) | ||
end | end | ||
</source> | </source> | ||
+ | |||
+ | === Drawing a rounded sides rectangle === | ||
+ | <source lang="lua"> | ||
+ | quartcircle = math.pi / 2 -- Define 1/4 angle constant | ||
+ | function love.draw( ) | ||
+ | love.graphics.setColor( .7, .7, 1 ) -- Blueish color | ||
+ | love.graphics.line( 200, 100, 600, 100 ) | ||
+ | love.graphics.line( 200, 300, 600, 300 ) | ||
+ | -- Angles are clockwise, as y value grows when going down | ||
+ | love.graphics.arc( "line", "open", 200, 200, 100, quartcircle, math.pi+quartcircle ) | ||
+ | love.graphics.arc( "line", "open", 600, 200, 100, -quartcircle, quartcircle) | ||
+ | end | ||
+ | </source> | ||
+ | |||
== Notes == | == Notes == | ||
The arc is drawn counter clockwise if the starting angle is numerically bigger than the final angle. The arc is drawn clockwise if the final angle is numerically bigger than the starting angle. | The arc is drawn counter clockwise if the starting angle is numerically bigger than the final angle. The arc is drawn clockwise if the final angle is numerically bigger than the starting angle. |
Latest revision as of 21:07, 26 March 2022
Available since LÖVE 0.8.0 |
This function is not supported in earlier versions. |
Draws a filled or unfilled arc at position (x, y)
. The arc is drawn from angle1
to angle2
in radians. The segments
parameter determines how many segments are used to draw the arc. The more segments, the smoother the edge.
Contents
Function
Draws an arc using the "pie" ArcType.
Synopsis
love.graphics.arc( drawmode, x, y, radius, angle1, angle2, segments )
Arguments
DrawMode drawmode
- How to draw the arc.
number x
- The position of the center along x-axis.
number y
- The position of the center along y-axis.
number radius
- Radius of the arc.
number angle1
- The angle at which the arc begins.
number angle2
- The angle at which the arc terminates.
number segments (10)
- The number of segments used for drawing the arc.
Returns
Nothing.
Function
Available since LÖVE 0.10.1 |
This variant is not supported in earlier versions. |
Synopsis
love.graphics.arc( drawmode, arctype, x, y, radius, angle1, angle2, segments )
Arguments
DrawMode drawmode
- How to draw the arc.
ArcType arctype
- The type of arc to draw.
number x
- The position of the center along x-axis.
number y
- The position of the center along y-axis.
number radius
- Radius of the arc.
number angle1
- The angle at which the arc begins.
number angle2
- The angle at which the arc terminates.
number segments (10)
- The number of segments used for drawing the arc.
Returns
Nothing.
Examples
Drawing half a circle
function love.draw( )
love.graphics.arc( "fill", 400, 300, 100, 0, math.pi )
end
Drawing Pacman
pacwidth = math.pi / 6 -- size of his mouth
function love.draw( )
love.graphics.setColor( 1, 1, 0 ) -- pacman needs to be yellow
love.graphics.arc( "fill", 400, 300, 100, pacwidth, (math.pi * 2) - pacwidth )
end
Drawing a rounded sides rectangle
quartcircle = math.pi / 2 -- Define 1/4 angle constant
function love.draw( )
love.graphics.setColor( .7, .7, 1 ) -- Blueish color
love.graphics.line( 200, 100, 600, 100 )
love.graphics.line( 200, 300, 600, 300 )
-- Angles are clockwise, as y value grows when going down
love.graphics.arc( "line", "open", 200, 200, 100, quartcircle, math.pi+quartcircle )
love.graphics.arc( "line", "open", 600, 200, 100, -quartcircle, quartcircle)
end
Notes
The arc is drawn counter clockwise if the starting angle is numerically bigger than the final angle. The arc is drawn clockwise if the final angle is numerically bigger than the starting angle.
See Also
Other Languages
Dansk –
Deutsch –
English –
Español –
Français –
Indonesia –
Italiano –
Lietuviškai –
Magyar –
Nederlands –
Polski –
Português –
Română –
Slovenský –
Suomi –
Svenska –
Türkçe –
Česky –
Ελληνικά –
Български –
Русский –
Српски –
Українська –
עברית –
ไทย –
日本語 –
正體中文 –
简体中文 –
Tiếng Việt –
한국어
More info