b2
Спадковість
Available since version: Gideros 2011.6
Опис:
Щоб завантажити бібліотеку Box2D, потрібен виклик
require box2d
.. Після завантаження бібліотеки Box2D таблиця b2 зберігає всі класи та функції, пов'язані з бібліотекою фізики Box2D.Приклади застосування:
Створення Box2d тіла та переміщення Bitmap разом з тілом
require "box2d"
local world = b2.World.new(0, 10, true)
--створити растровий об'єкт ball
local ball = Bitmap.new(Texture.new("ball.png"))
--встановлення точки прив'язки по центру
ball:setAnchorPoint(0.5,0.5)
ball:setPosition(100,100)
--отримати радіус
local radius = ball:getWidth()/2
--створити box2d фізичне тіло
local body = world:createBody{type = b2.DYNAMIC_BODY}
local circle = b2.CircleShape.new(0, 0, radius)
local fixture = body:createFixture{shape = circle, density = 1.0,
friction = 0.1, restitution = 0.2}
ball.body = body
--додати в сцену
stage:addChild(ball)
stage:addEventListener(Event.ENTER_FRAME, function()
-- встановити частоту оновлення фізики.
world:step(1/60, 8, 3)
ball:setPosition(ball.body:getPosition())
ball:setRotation(math.rad(ball.body:getAngle()))
end)
require "box2d"
local world = b2.World.new(0, 10, true)
--створити растровий об'єкт ball
local ball = Bitmap.new(Texture.new("ball.png"))
--встановлення точки прив'язки по центру
ball:setAnchorPoint(0.5,0.5)
ball:setPosition(100,100)
--отримати радіус
local radius = ball:getWidth()/2
--створити box2d фізичне тіло
local body = world:createBody{type = b2.DYNAMIC_BODY}
local circle = b2.CircleShape.new(0, 0, radius)
local fixture = body:createFixture{shape = circle, density = 1.0,
friction = 0.1, restitution = 0.2}
ball.body = body
--додати в сцену
stage:addChild(ball)
stage:addEventListener(Event.ENTER_FRAME, function()
-- встановити частоту оновлення фізики.
world:step(1/60, 8, 3)
ball:setPosition(ball.body:getPosition())
ball:setRotation(math.rad(ball.body:getAngle()))
end)
Методи, евенти та властивості:
Методи |
---|
b2.createDistanceJointDef b2.createFrictionJointDef b2.createGearJointDef b2.createMouseJointDef b2.createPrismaticJointDef b2.createPulleyJointDef b2.createRevoluteJointDef b2.createRopeJointDef b2.createWeldJointDef b2.createWheelJointDef b2.getScale b2.setScale |
Властивості |
---|
b2.DISTANCE_JOINT b2.DYNAMIC_BODY b2.FRICTION_JOINT b2.GEAR_JOINT b2.KINEMATIC_BODY b2.MOUSE_JOINT b2.PRISMATIC_JOINT b2.PULLEY_JOINT b2.REVOLUTE_JOINT b2.ROPE_JOINT b2.STATIC_BODY b2.WELD_JOINT b2.WHEEL_JOINT |
Немає коментарів:
Дописати коментар