getObjectScale: Difference between revisions

From Bohemia Interactive Community
Jump to navigation Jump to search
m (Text replacement - "\|game([0-9]) ?= (.+) \|version([0-9]) ?= (.+) " to "|game$1= $2 |version$3= $4 ")
No edit summary
 
(3 intermediate revisions by 2 users not shown)
Line 6: Line 6:
|gr1= Object Manipulation
|gr1= Object Manipulation


|descr= Returns the render scale of the object relative to the original model.
|descr= Returns the render scale of an object relative to the original model.


|s1= [[getObjectScale]] object
|s1= [[getObjectScale]] object


|p1= object: [[Object]] - Object to return scale of. Can also be a [[nearestTerrainObjects|terrain object]]
|p1= object: [[Object]] - object to return scale of. Can also be a [[nearestTerrainObjects|terrain object]].


|r1= [[Number]] - Scale relative to the original model
|r1= [[Number]] - scale relative to the original model


|x1= <code>_scale = [[getObjectScale]] _object;</code>
|x1= <sqf>
private _objectScale = getObjectScale MyObject;
 
if (_objectScale == 1) exitWith { systemChat "Original scale"; };
 
if (_objectScale > 1) then
{
systemChat "Scaled up";
}
else
{
systemChat "Scaled down";
};
</sqf>


|seealso= [[setObjectScale]]
|seealso= [[setObjectScale]]
}}
{{Note
|user= Samatra
|timestamp= 20240610122652
|text= Some objects can be scaled by XYZ individually by the engine. Rope segments are one example, they only scale by Z and this command returns average of all dimensions giving no real picture of the scale. You can get real scale of each dimension with:
<sqf>[vectorMagnitude vectorSideVisual _seg, vectorMagnitude vectorDirVisual _seg, vectorMagnitude vectorUpVisual _seg]</sqf>
for rope segment it will be something like <sqf inline>[1,1,1.54066]</sqf>
}}
}}

Latest revision as of 14:26, 10 June 2024

Hover & click on the images for description

Description

Description:
Returns the render scale of an object relative to the original model.
Groups:
Object Manipulation

Syntax

Syntax:
getObjectScale object
Parameters:
object: Object - object to return scale of. Can also be a terrain object.
Return Value:
Number - scale relative to the original model

Examples

Example 1:
private _objectScale = getObjectScale MyObject; if (_objectScale == 1) exitWith { systemChat "Original scale"; }; if (_objectScale > 1) then { systemChat "Scaled up"; } else { systemChat "Scaled down"; };

Additional Information

See also:
setObjectScale

Notes

Report bugs on the Feedback Tracker and/or discuss them on the Arma Discord or on the Forums.
Only post proven facts here! Add Note
Samatra - c
Posted on Jun 10, 2024 - 12:26 (UTC)
Some objects can be scaled by XYZ individually by the engine. Rope segments are one example, they only scale by Z and this command returns average of all dimensions giving no real picture of the scale. You can get real scale of each dimension with: for rope segment it will be something like [1,1,1.54066]