Difference between revisions of "love.graphics.translate"
(→Examples) |
|||
Line 56: | Line 56: | ||
love.graphics.line(-440, 0, 440, 0) | love.graphics.line(-440, 0, 440, 0) | ||
love.graphics.line(0, -440, 0, 440) | love.graphics.line(0, -440, 0, 440) | ||
+ | end | ||
+ | |||
+ | -- restore position with the right mouse button: | ||
+ | function love.mousepressed(x, y, button, istouch) | ||
+ | if button == 2 then | ||
+ | tx = 0 | ||
+ | ty = 0 | ||
+ | end | ||
end | end | ||
</source> | </source> | ||
+ | |||
+ | |||
== See Also == | == See Also == |
Revision as of 22:09, 4 November 2020
Translates the coordinate system in two dimensions.
When this function is called with two numbers, dx, and dy, all the following drawing operations take effect as if their x and y coordinates were x+dx and y+dy.
Scale and translate are not commutative operations, therefore, calling them in different orders will change the outcome.
This change lasts until love.draw() exits or else a love.graphics.pop reverts to a previous love.graphics.push.
Translating using whole numbers will prevent tearing/blurring of images and fonts draw after translating.
Function
Synopsis
love.graphics.translate( dx, dy )
Arguments
Returns
Nothing.
Examples
Translate down and to the right by 10 pixels. Remember, the translation is reset at the end of each love.draw.
function love.draw()
love.graphics.translate(10, 10)
love.graphics.print("Text", 5, 5) -- will effectively render at 15x15
end
Move the coordinate system with the mouse:
tx=0
ty=0
function love.draw()
mx = love.mouse.getX()
my = love.mouse.getY()
if love.mouse.isDown(1) then
if not mouse_pressed then
mouse_pressed = true
dx = tx-mx
dy = ty-my
else
tx = mx+dx
ty = my+dy
end
elseif mouse_pressed then
mouse_pressed = false
end
love.graphics.translate(tx, ty)
-- example graphics:
love.graphics.circle( "line", 0, 0, 400 )
love.graphics.line(-440, 0, 440, 0)
love.graphics.line(0, -440, 0, 440)
end
-- restore position with the right mouse button:
function love.mousepressed(x, y, button, istouch)
if button == 2 then
tx = 0
ty = 0
end
end
See Also
- love.graphics
- love.graphics.pop
- love.graphics.push
- love.graphics.rotate
- love.graphics.scale
- love.graphics.shear
- love.graphics.origin
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