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)

Last updated

Sinespace® is a registered trademark of Sine Wave Entertainment Ltd, All Rights Reserved.