Aller au contenu principal

SJointLimits

Index​

Functions Index​

Function Name
override string ToString ()
static SJointLimits New (float min, float max, float bounciness, float bounceMinVelocity, float contactDistance)

Properties Index​

Property Name
float Min get set
float Max get set
float Bounciness get set
float BounceMinVelocity get set
float ContactDistance get set

Functions​

ToString​

override string ToString ()

Returns this SJointLimits's properties as a string

ParameterTypeDescription
LimitsString = Space.Host.ExecutingObject.HingeJoint.Limits.ToString()
--the below script will make a UI Text element display this GameObjects Hinge Joint Limits' properties
--[Add "thetext" and "thehingejoint" reference to the Scripting Runtime component]
thisObject = Space.Host.ExecutingObject
text = Space.Host.GetReference("thetext").UIText
hingejoint = Space.Host.GetReference("thehingejoint").HingeJoint


function OnUpdateFunction()
limits = hingejoint.Limits
text.Text = limits.ToString()
end


thisObject.OnUpdate(OnUpdateFunction)

New​

static SJointLimits New (float min, float max, float bounciness, float bounceMinVelocity, float contactDistance)

Creates a new SJoinLimits with the given min, max, bounciness, bounceMinVelocity and contactDistance.

ParameterTypeDescription
Limits = Space.Host.ExecutingObject.HingeJoint.Limits.New((1,2,3,4,5))
--the below script will change all Hinge Joint Limits properties to 0 when clicked
--[Add "thehingejoint" reference to the Scripting Runtime component]
thisObject = Space.Host.ExecutingObject
hingejoint = Space.Host.GetReference("thehingejoint").HingeJoint


function OnClickFunction()
limits = hingejoint.Limits
hingejoint.Limits = limits.New(0,0,0,0,0)
end

thisObject.AddClickable()
thisObject.Clickable.OnClick(OnClickFunction)

Properties​

Min​

float Min get set

The lower angular limit (in degrees) of the joint.

LimitsMin = Space.Host.ExecutingObject.HingeJoint.Limits.Min
--the below script will make a slider change a Hinge Joint Limits Min property
--[Add "theslider" and "thehingejoint" reference to the Scripting Runtime component]

slider = Space.Host.GetReference("theslider").UISlider
hingejoint = Space.Host.GetReference("thehingejoint").HingeJoint


OVC = function()
limits = hingejoint.Limits
limits.Min = (slider.Value * 10.0) -- from 0.0 to 10.0
hingejoint.Limits = limits
end

slider.OnValueChanged(OVC)

Max​

float Max get set

The upper angular limit (in degrees) of the joint.

LimitsMax= Space.Host.ExecutingObject.HingeJoint.Limits.Max
--the below script will make a slider change a Hinge Joint Limits Max property
--[Add "theslider" and "thehingejoint" reference to the Scripting Runtime component]

slider = Space.Host.GetReference("theslider").UISlider
hingejoint = Space.Host.GetReference("thehingejoint").HingeJoint


OVC = function()
limits = hingejoint.Limits
limits.Max = (slider.Value * 10.0) -- from 0.0 to 10.0
hingejoint.Limits = limits
end

slider.OnValueChanged(OVC)

Bounciness​

float Bounciness get set

Determines the size of the bounce when the joint hits it's limit. Also known as restitution.

LimitsBounciness = Space.Host.ExecutingObject.HingeJoint.Limits.Bounciness
--the below script will make a slider change a Hinge Joint Limits Bounciness property
--[Add "theslider" and "thehingejoint" reference to the Scripting Runtime component]

slider = Space.Host.GetReference("theslider").UISlider
hingejoint = Space.Host.GetReference("thehingejoint").HingeJoint


OVC = function()
limits = hingejoint.Limits
limits.Bounciness = (slider.Value * 1.0) -- from 0.0 to 1.0
hingejoint.Limits = limits
end

slider.OnValueChanged(OVC)

BounceMinVelocity​

float BounceMinVelocity get set

The minimum impact velocity which will cause the joint to bounce.

LimitsBounceMinVelocity = Space.Host.ExecutingObject.HingeJoint.Limits.BounceMinVelocity
--the below script will make a slider change a Hinge Joint Limits BounceMinVelocity property
--[Add "theslider" and "thehingejoint" reference to the Scripting Runtime component]

slider = Space.Host.GetReference("theslider").UISlider
hingejoint = Space.Host.GetReference("thehingejoint").HingeJoint


OVC = function()
limits = hingejoint.Limits
limits.BounceMinVelocity = (slider.Value * 10.0) -- from 0.0 to 10.0
hingejoint.Limits = limits
end

slider.OnValueChanged(OVC)

ContactDistance​

float ContactDistance get set

Distance inside the limit value at which the limit will be considered to be active by the solver.

LimitsContactDistance = Space.Host.ExecutingObject.HingeJoint.Limits.ContactDistance
--the below script will make a slider change a Hinge Joint Limits Contact Distance property
--[Add "theslider" and "thehingejoint" reference to the Scripting Runtime component]

slider = Space.Host.GetReference("theslider").UISlider
hingejoint = Space.Host.GetReference("thehingejoint").HingeJoint


OVC = function()
limits = hingejoint.Limits
limits.ContactDistance = (slider.Value * 10.0) -- from 0.0 to 10.0
hingejoint.Limits = limits
end

slider.OnValueChanged(OVC)