Difference between revisions of "Canvas:clear"
(Added setScissor note.) |
(→See Also) |
||
(9 intermediate revisions by 3 users not shown) | |||
Line 1: | Line 1: | ||
− | {{ | + | {{newinoldin|[[0.8.0]]|080|[[0.10.0]]|100|type=function|text=It has been replaced by [[love.graphics.clear]]}} |
− | Clears | + | Clears the contents of a [[Canvas]] to a specific color. |
− | + | Calling this function directly after the Canvas becomes active (via [[love.graphics.setCanvas]] or [[Canvas:renderTo]]) is more efficient than calling it when the Canvas isn't active, especially on mobile devices. | |
− | + | [[love.graphics.setScissor]] will restrict the area of the Canvas that this function affects. | |
== Function == | == Function == | ||
+ | Clear the canvas to transparent black: (0, 0, 0, 0). | ||
=== Synopsis === | === Synopsis === | ||
<source lang="lua"> | <source lang="lua"> | ||
Line 16: | Line 17: | ||
== Function == | == Function == | ||
+ | Clear the canvas to a specific color. | ||
=== Synopsis === | === Synopsis === | ||
<source lang="lua"> | <source lang="lua"> | ||
Line 37: | Line 39: | ||
=== Returns === | === Returns === | ||
Nothing. | Nothing. | ||
+ | |||
+ | == Examples == | ||
+ | === Clear canvas before drawing === | ||
+ | If the c-key is pressed the canvas will be cleared before drawing a new line on the screen. | ||
+ | <source lang="lua"> | ||
+ | local canvas = love.graphics.newCanvas() | ||
+ | local clear | ||
+ | function love.update() | ||
+ | -- Use an anonymous function to draw lines on our canvas. | ||
+ | canvas:renderTo(function() | ||
+ | if clear then canvas:clear() end -- Clear the canvas before drawing lines. | ||
+ | love.graphics.setColor(love.math.random(255), 0, 0) | ||
+ | love.graphics.line(0, 0, love.math.random(0, love.graphics.getWidth()), love.math.random(0, love.graphics.getHeight())) | ||
+ | end) | ||
+ | end | ||
+ | |||
+ | function love.draw() | ||
+ | love.graphics.setColor(255, 255, 255) | ||
+ | love.graphics.draw(canvas) | ||
+ | end | ||
+ | |||
+ | function love.keypressed(key) | ||
+ | if key == "c" then clear = not clear end | ||
+ | end | ||
+ | </source> | ||
+ | |||
+ | === How to clear canvas === | ||
+ | <source lang="lua"> | ||
+ | love.graphics.setCanvas(canvas) -- set to canvas | ||
+ | love.graphics.clear(0,0,0,0) -- clear the canvas | ||
+ | love.graphics.setCanvas() -- back to standard render output | ||
+ | </source> | ||
== See Also == | == See Also == | ||
* [[parent::Canvas]] | * [[parent::Canvas]] | ||
+ | * [[love.graphics.clear]] | ||
[[Category:Functions]] | [[Category:Functions]] | ||
− | {{#set:Description=Clears | + | {{#set:Description=Clears the contents of a Canvas to a specific color.}} |
+ | |||
== Other Languages == | == Other Languages == | ||
{{i18n|Canvas:clear}} | {{i18n|Canvas:clear}} |
Latest revision as of 19:53, 29 September 2021
Available since LÖVE 0.8.0 and removed in LÖVE 0.10.0 |
It has been replaced by love.graphics.clear. |
Clears the contents of a Canvas to a specific color.
Calling this function directly after the Canvas becomes active (via love.graphics.setCanvas or Canvas:renderTo) is more efficient than calling it when the Canvas isn't active, especially on mobile devices.
love.graphics.setScissor will restrict the area of the Canvas that this function affects.
Contents
Function
Clear the canvas to transparent black: (0, 0, 0, 0).
Synopsis
Canvas:clear( )
Arguments
None.
Returns
Nothing.
Function
Clear the canvas to a specific color.
Synopsis
Canvas:clear( red, green, blue, alpha )
Arguments
number red
- Red component of the clear color (0-255).
number green
- Green component of the clear color (0-255).
number blue
- Blue component of the clear color (0-255).
number alpha (255)
- Alpha component of the clear color (0-255).
Returns
Nothing.
Function
Synopsis
Canvas:clear( rgba )
Arguments
table rgba
- A sequence with the red, green, blue and alpha values as numbers (alpha may be ommitted).
Returns
Nothing.
Examples
Clear canvas before drawing
If the c-key is pressed the canvas will be cleared before drawing a new line on the screen.
local canvas = love.graphics.newCanvas()
local clear
function love.update()
-- Use an anonymous function to draw lines on our canvas.
canvas:renderTo(function()
if clear then canvas:clear() end -- Clear the canvas before drawing lines.
love.graphics.setColor(love.math.random(255), 0, 0)
love.graphics.line(0, 0, love.math.random(0, love.graphics.getWidth()), love.math.random(0, love.graphics.getHeight()))
end)
end
function love.draw()
love.graphics.setColor(255, 255, 255)
love.graphics.draw(canvas)
end
function love.keypressed(key)
if key == "c" then clear = not clear end
end
How to clear canvas
love.graphics.setCanvas(canvas) -- set to canvas
love.graphics.clear(0,0,0,0) -- clear the canvas
love.graphics.setCanvas() -- back to standard render output
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