Difference between revisions of "love.physics.setMeter"

m
(Added pixel relationship note and example)
Line 1: Line 1:
 
{{newin|[[0.8.0]]|080|type=function}}
 
{{newin|[[0.8.0]]|080|type=function}}
Sets the meter scale factor.
+
Sets the pixels to meter scale factor.
  
All coordinates in the physics module are divided by this number, creating a convenient way to draw the objects directly to the screen without the need for graphics transformations.
+
All coordinates in the physics module are divided by this number and converted to meters, and it creates a convenient way to draw the objects directly to the screen without the need for graphics transformations.
  
 
It is recommended to create shapes no larger than 10 times the scale. This is important because Box2D is tuned to work well with shape sizes from 0.1 to 10 meters.
 
It is recommended to create shapes no larger than 10 times the scale. This is important because Box2D is tuned to work well with shape sizes from 0.1 to 10 meters.
Line 14: Line 14:
 
=== Returns ===
 
=== Returns ===
 
Nothing.
 
Nothing.
 +
== Examples ==
 +
<source lang="lua">
 +
love.physics.setMeter(30) -- set 30 pixels/meter
 +
body = love.physics.newBody(world, 300, 300, "dynamic") -- place the body at pixel coordinates (300,300) or in meter coordinates (10,10)
 +
love.physics.setMeter(10) -- set 10 pixels/meter
 +
body:getPosition() -- returns pixel coordinates (100,100)
 +
</source>
 
== See Also ==
 
== See Also ==
 
* [[parent::love.physics]]
 
* [[parent::love.physics]]

Revision as of 09:23, 25 February 2013

Available since LÖVE 0.8.0
This function is not supported in earlier versions.

Sets the pixels to meter scale factor.

All coordinates in the physics module are divided by this number and converted to meters, and it creates a convenient way to draw the objects directly to the screen without the need for graphics transformations.

It is recommended to create shapes no larger than 10 times the scale. This is important because Box2D is tuned to work well with shape sizes from 0.1 to 10 meters.

Function

Synopsis

love.physics.setMeter( scale )

Arguments

number scale
The scale factor as an integer.

Returns

Nothing.

Examples

love.physics.setMeter(30) -- set 30 pixels/meter
body = love.physics.newBody(world, 300, 300, "dynamic") -- place the body at pixel coordinates (300,300) or in meter coordinates (10,10)
love.physics.setMeter(10) -- set 10 pixels/meter
body:getPosition() -- returns pixel coordinates (100,100)

See Also


Other Languages