Difference between revisions of "B2.PrismaticJoint"
m (Text replacement - "</source" to "</syntaxhighlight") |
|||
(3 intermediate revisions by 2 users not shown) | |||
Line 11: | Line 11: | ||
=== Examples === | === Examples === | ||
'''Prismatic joint''' | '''Prismatic joint''' | ||
− | < | + | <syntaxhighlight lang="lua"> |
--create empty box2d body for joint | --create empty box2d body for joint | ||
local ground = world:createBody({}) | local ground = world:createBody({}) | ||
Line 23: | Line 23: | ||
local jointDef = b2.createPrismaticJointDef(body, ground, 350, 100, 0.3, 1) | local jointDef = b2.createPrismaticJointDef(body, ground, 350, 100, 0.3, 1) | ||
local prismaticJoint = world:createJoint(jointDef) | local prismaticJoint = world:createJoint(jointDef) | ||
− | </ | + | </syntaxhighlight> |
{|- | {|- | ||
Line 33: | Line 33: | ||
[[Special:MyLanguage/b2.PrismaticJoint:getJointTranslation|b2.PrismaticJoint:getJointTranslation]] ''returns the current joint translation in meters''<br/><!-- GIDEROSMTD:b2.PrismaticJoint:getJointTranslation() returns the current joint translation in meters --> | [[Special:MyLanguage/b2.PrismaticJoint:getJointTranslation|b2.PrismaticJoint:getJointTranslation]] ''returns the current joint translation in meters''<br/><!-- GIDEROSMTD:b2.PrismaticJoint:getJointTranslation() returns the current joint translation in meters --> | ||
[[Special:MyLanguage/b2.PrismaticJoint:getLimits|b2.PrismaticJoint:getLimits]] ''returns the lower and upper joint limits in meters''<br/><!-- GIDEROSMTD:b2.PrismaticJoint:getLimits() returns the lower and upper joint limits in meters --> | [[Special:MyLanguage/b2.PrismaticJoint:getLimits|b2.PrismaticJoint:getLimits]] ''returns the lower and upper joint limits in meters''<br/><!-- GIDEROSMTD:b2.PrismaticJoint:getLimits() returns the lower and upper joint limits in meters --> | ||
+ | [[Special:MyLanguage/b2.PrismaticJoint:getMotorForce|b2.PrismaticJoint:getMotorForce]] ''returns the current motor force given the inverse time step''<br/><!-- GIDEROSMTD:b2.PrismaticJoint:getMotorForce(inv_dt) returns the current motor force given the inverse time step --> | ||
[[Special:MyLanguage/b2.PrismaticJoint:getMotorSpeed|b2.PrismaticJoint:getMotorSpeed]] ''returns the motor speed in meters per second''<br/><!-- GIDEROSMTD:b2.PrismaticJoint:getMotorSpeed() returns the motor speed in meters per second --> | [[Special:MyLanguage/b2.PrismaticJoint:getMotorSpeed|b2.PrismaticJoint:getMotorSpeed]] ''returns the motor speed in meters per second''<br/><!-- GIDEROSMTD:b2.PrismaticJoint:getMotorSpeed() returns the motor speed in meters per second --> | ||
[[Special:MyLanguage/b2.PrismaticJoint:isLimitEnabled|b2.PrismaticJoint:isLimitEnabled]] ''is the joint limit enabled?''<br/><!-- GIDEROSMTD:b2.PrismaticJoint:isLimitEnabled() is the joint limit enabled? --> | [[Special:MyLanguage/b2.PrismaticJoint:isLimitEnabled|b2.PrismaticJoint:isLimitEnabled]] ''is the joint limit enabled?''<br/><!-- GIDEROSMTD:b2.PrismaticJoint:isLimitEnabled() is the joint limit enabled? --> | ||
Line 39: | Line 40: | ||
[[Special:MyLanguage/b2.PrismaticJoint:setMaxMotorForce|b2.PrismaticJoint:setMaxMotorForce]] ''sets the maximum motor force in N''<br/><!-- GIDEROSMTD:b2.PrismaticJoint:setMaxMotorForce(force) sets the maximum motor force in N --> | [[Special:MyLanguage/b2.PrismaticJoint:setMaxMotorForce|b2.PrismaticJoint:setMaxMotorForce]] ''sets the maximum motor force in N''<br/><!-- GIDEROSMTD:b2.PrismaticJoint:setMaxMotorForce(force) sets the maximum motor force in N --> | ||
[[Special:MyLanguage/b2.PrismaticJoint:setMotorSpeed|b2.PrismaticJoint:setMotorSpeed]] ''sets the motor speed in meters per second''<br/><!-- GIDEROSMTD:b2.PrismaticJoint:setMotorSpeed(speed) sets the motor speed in meters per second --> | [[Special:MyLanguage/b2.PrismaticJoint:setMotorSpeed|b2.PrismaticJoint:setMotorSpeed]] ''sets the motor speed in meters per second''<br/><!-- GIDEROSMTD:b2.PrismaticJoint:setMotorSpeed(speed) sets the motor speed in meters per second --> | ||
− | |||
| style="width: 50%; vertical-align:top;"| | | style="width: 50%; vertical-align:top;"| | ||
Line 47: | Line 47: | ||
---- | ---- | ||
+ | *'''[[B2.Joint]]''' | ||
*'''[[LiquidFun]]''' | *'''[[LiquidFun]]''' |
Latest revision as of 16:54, 12 July 2023
Supported platforms:
Available since: Gideros 2011.6
Inherits from: b2.Joint
Description
A prismatic joint. This joint provides one degree of freedom: translation along an axis fixed in body1. Relative rotation is prevented. You can use a joint limit to restrict the range of motion and a joint motor to drive the motion or to model joint friction.
Examples
Prismatic joint
--create empty box2d body for joint
local ground = world:createBody({})
ground:setPosition(465, 480)
--axisx, axisy values usually between 0 and 1
--0 0 moves freely
--0 1 moves on y axis
--1 0 moves on x axis
--1 1 moves on diagonal
local jointDef = b2.createPrismaticJointDef(body, ground, 350, 100, 0.3, 1)
local prismaticJoint = world:createJoint(jointDef)
Methodsb2.PrismaticJoint:enableLimit enables or disables the joint limit |
EventsConstants |