Difference between revisions of "love.graphics.push"
(Linkify Stacktype) |
m |
||
Line 6: | Line 6: | ||
=== Synopsis === | === Synopsis === | ||
<source lang="lua"> | <source lang="lua"> | ||
− | love.graphics.push( | + | love.graphics.push( ) |
</source> | </source> | ||
=== Arguments === | === Arguments === | ||
None. | None. | ||
− | |||
− | |||
− | |||
=== Returns === | === Returns === | ||
Nothing. | Nothing. | ||
+ | |||
+ | == Function == | ||
+ | {{newin|[[0.9.2]]|092|type=variant}} | ||
+ | Pushes a specific type of state to the stack. | ||
+ | === Synopsis === | ||
+ | <source lang="lua"> | ||
+ | love.graphics.push( stacktype ) | ||
+ | </source> | ||
+ | === Arguments === | ||
+ | {{param|StackType|stacktype|The type of stack to push (e.g. just transformation state, or all love.graphics state.)}} | ||
+ | === Returns === | ||
+ | Nothing. | ||
+ | |||
== Examples == | == Examples == | ||
<source lang="lua"> | <source lang="lua"> | ||
Line 24: | Line 34: | ||
love.graphics.pop() -- return to the default coordinates | love.graphics.pop() -- return to the default coordinates | ||
-- draw the status display using the screen coordinates | -- draw the status display using the screen coordinates | ||
+ | end | ||
+ | </source> | ||
+ | ---- | ||
+ | {{newin|[[0.9.2]]|092|type=example}} | ||
+ | <source lang="lua"> | ||
+ | function DrawCoolThing() | ||
+ | love.graphics.push("all") -- save all love.graphics state so any changes can be restored | ||
+ | |||
+ | love.graphics.setColor(0, 0, 255) | ||
+ | love.graphics.setBlendMode("subtractive") | ||
+ | |||
+ | love.graphics.circle("fill", 400, 300, 80) | ||
+ | |||
+ | love.graphics.pop() -- restore the saved love.graphics state | ||
+ | end | ||
+ | |||
+ | function love.draw() | ||
+ | love.graphics.setColor(255, 128, 128) | ||
+ | love.graphics.circle("fill", 400, 300, 100) | ||
+ | |||
+ | DrawCoolThing() | ||
+ | |||
+ | love.graphics.rectangle("fill", 600, 200, 200, 200) -- still uses the color set at the top of love.draw | ||
end | end | ||
</source> | </source> |
Revision as of 01:26, 2 April 2015
Copies and pushes the current coordinate transformation to the transformation stack.
This function is always used to prepare for a corresponding pop operation later. It stores the current coordinate transformation state into the transformation stack and keeps it active. Later changes to the transformation can be undone by using the pop operation, which returns the coordinate transform to the state it was in before calling push.
Contents
Function
Synopsis
love.graphics.push( )
Arguments
None.
Returns
Nothing.
Function
Available since LÖVE 0.9.2 |
This variant is not supported in earlier versions. |
Pushes a specific type of state to the stack.
Synopsis
love.graphics.push( stacktype )
Arguments
StackType stacktype
- The type of stack to push (e.g. just transformation state, or all love.graphics state.)
Returns
Nothing.
Examples
function love.draw()
love.graphics.push() -- stores the default coordinate system
love.graphics.translate(...) -- move the camera position
love.graphics.scale(...) -- zoom the camera
-- use the new coordinate system to draw the viewed scene
love.graphics.pop() -- return to the default coordinates
-- draw the status display using the screen coordinates
end
Available since LÖVE 0.9.2 |
This example is not supported in earlier versions. |
function DrawCoolThing()
love.graphics.push("all") -- save all love.graphics state so any changes can be restored
love.graphics.setColor(0, 0, 255)
love.graphics.setBlendMode("subtractive")
love.graphics.circle("fill", 400, 300, 80)
love.graphics.pop() -- restore the saved love.graphics state
end
function love.draw()
love.graphics.setColor(255, 128, 128)
love.graphics.circle("fill", 400, 300, 100)
DrawCoolThing()
love.graphics.rectangle("fill", 600, 200, 200, 200) -- still uses the color set at the top of love.draw
end
See Also
- love.graphics
- love.graphics.pop
- love.graphics.translate
- love.graphics.rotate
- love.graphics.scale
- love.graphics.shear
- StackType
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