Difference between revisions of "Shape:getBoundingBox"
(Fixed the vertex order in the text, which was wrong (see: see sample code, see attached image produced by sample code)) |
|||
Line 1: | Line 1: | ||
− | |||
− | |||
− | |||
− | |||
− | |||
Gets the bounding box of the shape. | Gets the bounding box of the shape. | ||
This function can be used in a nested fashion with [[love.graphics.polygon]]. | This function can be used in a nested fashion with [[love.graphics.polygon]]. | ||
Line 12: | Line 7: | ||
x1, y1, x2, y2, x3, y3, x4, y4 = Shape:getBoundingBox( ) | x1, y1, x2, y2, x3, y3, x4, y4 = Shape:getBoundingBox( ) | ||
</source> | </source> | ||
− | Vertexes are returned starting | + | Vertexes are returned starting from the bottom-left in a clockwise fashion (bottom-left, top-left, top-right, bottom-right). |
=== Arguments === | === Arguments === | ||
None. | None. | ||
=== Returns === | === Returns === | ||
− | {{param|number|x1|The x-component of the first vertex, | + | {{param|number|x1|The x-component of the first vertex, bottom-left.}} |
− | {{param|number|y1|The y-component of the first vertex, | + | {{param|number|y1|The y-component of the first vertex, bottom-left.}} |
− | {{param|number|x2|The x-component of the second vertex, top- | + | {{param|number|x2|The x-component of the second vertex, top-left.}} |
− | {{param|number|y2|The y-component of the second vertex, top- | + | {{param|number|y2|The y-component of the second vertex, top-left.}} |
− | {{param|number|x3|The x-component of the third vertex, | + | {{param|number|x3|The x-component of the third vertex, top-right.}} |
− | {{param|number|y3|The y-component of the third vertex, | + | {{param|number|y3|The y-component of the third vertex, top-right.}} |
− | {{param|number|x4|The x-component of the fourth vertex, bottom- | + | {{param|number|x4|The x-component of the fourth vertex, bottom-right.}} |
− | {{param|number|y4|The y-component of the fourth vertex, bottom- | + | {{param|number|y4|The y-component of the fourth vertex, bottom-right.}} |
== Example == | == Example == | ||
Revision as of 07:50, 5 November 2010
Gets the bounding box of the shape. This function can be used in a nested fashion with love.graphics.polygon.
Function
Synopsis
A bounding box is the smallest rectangle that encapsulates the entire polygon.
x1, y1, x2, y2, x3, y3, x4, y4 = Shape:getBoundingBox( )
Vertexes are returned starting from the bottom-left in a clockwise fashion (bottom-left, top-left, top-right, bottom-right).
Arguments
None.
Returns
number x1
- The x-component of the first vertex, bottom-left.
number y1
- The y-component of the first vertex, bottom-left.
number x2
- The x-component of the second vertex, top-left.
number y2
- The y-component of the second vertex, top-left.
number x3
- The x-component of the third vertex, top-right.
number y3
- The y-component of the third vertex, top-right.
number x4
- The x-component of the fourth vertex, bottom-right.
number y4
- The y-component of the fourth vertex, bottom-right.
Example
- And here's the source code if you want to try/test/see it yourself.
function love.load()
world = love.physics.newWorld(650, 650)
world:setGravity(0,700)
world:setMeter(64)
body = love.physics.newBody(world, 650/2, 650/2, 0, 0)
shape = love.physics.newRectangleShape(body, 0, 0, 300, 300, 0)
love.graphics.setFont(18)
love.graphics.setBackgroundColor(255, 255, 255, 255)
love.graphics.setMode(650, 650, false, true, 0)
end
function love.draw()
X1, Y1, X2, Y2, X3, Y3, X4, Y4 = shape:getBoundingBox()
love.graphics.setColor(0,0,0,255)
love.graphics.print("X1, Y1", X1, Y1)
love.graphics.print("X2, Y2", X2, Y2)
love.graphics.print("X3, Y3", X3, Y3)
love.graphics.print("X4, Y4", X4, Y4)
end