Difference between revisions of "B2.PrismaticJoint"
(Created page with "__NOTOC__ '''Supported platforms:''' <br/> '''Available since:''' Gideros 2011.6<br/> === Description === <br /> A prismatic joint. This joint provides one degree of freedom:...") |
m (Text replacement - "</source" to "</syntaxhighlight") |
||
(19 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
__NOTOC__ | __NOTOC__ | ||
− | '''Supported platforms:''' <br/> | + | <languages /> |
+ | <!-- GIDEROSOBJ:b2.PrismaticJoint --> | ||
+ | '''Supported platforms:''' [[File:Platform android.png]][[File:Platform ios.png]][[File:Platform mac.png]][[File:Platform pc.png]][[File:Platform html5.png]][[File:Platform winrt.png]][[File:Platform win32.png]]<br/> | ||
'''Available since:''' Gideros 2011.6<br/> | '''Available since:''' Gideros 2011.6<br/> | ||
+ | '''Inherits from:''' [[Special:MyLanguage/b2.Joint|b2.Joint]]<br/> | ||
+ | |||
=== Description === | === 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. | |
− | 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''' | ||
+ | <syntaxhighlight lang="lua"> | ||
+ | --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) | ||
+ | </syntaxhighlight> | ||
+ | |||
{|- | {|- | ||
− | | style="width: 50%;"| | + | | style="width: 50%; vertical-align:top;"| |
=== Methods === | === Methods === | ||
− | | style="width: 50%;"| | + | [[Special:MyLanguage/b2.PrismaticJoint:enableLimit|b2.PrismaticJoint:enableLimit]] ''enables or disables the joint limit''<br/><!-- GIDEROSMTD:b2.PrismaticJoint:enableLimit(flag) enables or disables the joint limit --> |
+ | [[Special:MyLanguage/b2.PrismaticJoint:enableMotor|b2.PrismaticJoint:enableMotor]] ''enables or disables the joint motor''<br/><!-- GIDEROSMTD:b2.PrismaticJoint:enableMotor(flag) enables or disables the joint motor --> | ||
+ | [[Special:MyLanguage/b2.PrismaticJoint:getJointSpeed|b2.PrismaticJoint:getJointSpeed]] ''returns the current joint translation speed in meters per second''<br/><!-- GIDEROSMTD:b2.PrismaticJoint:getJointSpeed() returns the current joint translation speed in meters per second --> | ||
+ | [[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: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:isLimitEnabled|b2.PrismaticJoint:isLimitEnabled]] ''is the joint limit enabled?''<br/><!-- GIDEROSMTD:b2.PrismaticJoint:isLimitEnabled() is the joint limit enabled? --> | ||
+ | [[Special:MyLanguage/b2.PrismaticJoint:isMotorEnabled|b2.PrismaticJoint:isMotorEnabled]] ''is the joint motor enabled?''<br/><!-- GIDEROSMTD:b2.PrismaticJoint:isMotorEnabled() is the joint motor enabled? --> | ||
+ | [[Special:MyLanguage/b2.PrismaticJoint:setLimits|b2.PrismaticJoint:setLimits]] ''sets the joint limits in meters''<br/><!-- GIDEROSMTD:b2.PrismaticJoint:setLimits(lower,upper) sets the joint limits in meters --> | ||
+ | [[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 --> | ||
+ | |||
+ | | style="width: 50%; vertical-align:top;"| | ||
=== Events === | === Events === | ||
=== Constants === | === Constants === | ||
|} | |} | ||
+ | |||
+ | ---- | ||
+ | *'''[[B2.Joint]]''' | ||
+ | *'''[[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 |