Difference between revisions of "love.graphics.draw"
m (Removed a sentence (since it's not exactly true.)) |
m (Add link to quad page.) |
||
Line 36: | Line 36: | ||
</source> | </source> | ||
=== Arguments === | === Arguments === | ||
− | {{param|Image or Canvas|image|An [[Image]] or [[Canvas]] to texture the Quad with.}} | + | {{param|Image or Canvas|image|An [[Image]] or [[Canvas]] to texture the [[Quad]] with.}} |
{{param|Quad|quad|The Quad to draw on screen.}} | {{param|Quad|quad|The Quad to draw on screen.}} | ||
{{param|number|x|The position to draw the object (x-axis).}} | {{param|number|x|The position to draw the object (x-axis).}} |
Revision as of 18:18, 31 January 2015
Draws a Drawable object (an Image, Canvas, SpriteBatch, ParticleSystem, or Mesh) on the screen with optional rotation, scaling and shearing.
Objects are drawn relative to their local coordinate system. The origin is by default located at the top left corner of Image and Canvas. All scaling, shearing, and rotation arguments transform the object relative to that point. Also, the position of the origin can be specified on the screen coordinate system.
It's possible to rotate an object about its center by offsetting the origin to the center. Angles must be given in radians for rotation. One can also use a negative scaling factor to flip about its centerline.
Note that the offsets are applied before rotation, scaling, or shearing; scaling and shearing are applied before rotation.
The right and bottom edges of the object are shifted at an angle defined by the shearing factors.
Function
Synopsis
love.graphics.draw( drawable, x, y, r, sx, sy, ox, oy, kx, ky )
Arguments
Drawable drawable
- A drawable object.
number x (0)
- The position to draw the object (x-axis).
number y (0)
- The position to draw the object (y-axis).
number r (0)
- Orientation (radians).
number sx (1)
- Scale factor (x-axis).
number sy (sx)
- Scale factor (y-axis).
number ox (0)
- Origin offset (x-axis).
number oy (0)
- Origin offset (y-axis).
Returns
Nothing.
Function
Available since LÖVE 0.9.0 |
It has replaced love.graphics.drawq. |
Synopsis
love.graphics.draw( image, quad, x, y, r, sx, sy, ox, oy, kx, ky )
Arguments
Image or Canvas image
- An Image or Canvas to texture the Quad with.
Quad quad
- The Quad to draw on screen.
number x
- The position to draw the object (x-axis).
number y
- The position to draw the object (y-axis).
number r (0)
- Orientation (radians).
number sx (1)
- Scale factor (x-axis).
number sy (sx)
- Scale factor (y-axis).
number ox (0)
- Origin offset (x-axis).
number oy (0)
- Origin offset (y-axis).
number kx (0)
- Shearing factor (x-axis).
number ky (0)
- Shearing factor (y-axis).
Returns
Nothing.
Examples
Draw an image (the Hamster Ball) at 100 by 100 pixels
function love.load()
hamster = love.graphics.newImage("hamster.png")
end
function love.draw()
love.graphics.draw(hamster, 100, 100)
end
Draw an image (the Hamster Ball) from the center at 100 by 100 pixels, rotated by 90 degrees
function love.load()
hamster = love.graphics.newImage("hamster.png")
width = hamster:getWidth()
height = hamster:getHeight()
end
function love.draw()
love.graphics.draw(hamster, 100, 100, math.rad(90), 1, 1, width / 2, height / 2)
end
Available since LÖVE 0.9.0 |
This functionality is not supported in earlier versions. |
Draw the top half of an image (the Hamster Ball) at 100 by 100 pixels.
function love.load()
image = love.graphics.newImage("hamster.png")
quad = love.graphics.newQuad(0, 0, 128, 64, image:getWidth(), image:getHeight())
end
function love.draw()
love.graphics.draw(image, quad, 100, 100)
end
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