BIS fnc clamp: Difference between revisions
Jump to navigation
Jump to search
Lou Montana (talk | contribs) m (Text replacement - "<code> +" to "<code>") |
Lou Montana (talk | contribs) (Add performance comparison) |
||
(15 intermediate revisions by the same user not shown) | |||
Line 2: | Line 2: | ||
|game1= arma3 | |game1= arma3 | ||
|version1= 1.00 | |version1= 1.00 | ||
Line 8: | Line 7: | ||
|descr= Clamps provided value within min..max range. | |descr= Clamps provided value within min..max range. | ||
{{Feature|informative|This function is for readability; for performance, directly use [[min]] and [[max]].}} | |||
|s1= [value, min, max] call [[BIS_fnc_clamp]] | |s1= [value, min, max] call [[BIS_fnc_clamp]] | ||
|p1= value: [[Number]] - value to be clamped | |p1= value: [[Number]] - value to be clamped | ||
|p2= min: [[Number]] - (Optional, default 0) lower limit | |p2= min: [[Number]] - (Optional, default 0) lower limit | ||
|p3= max: [[Number]] - (Optional, default 0) upper limit | |p3= max: [[Number]] - (Optional, default 0) upper limit | ||
|r1= [[Number]] - the clamped value | |r1= [[Number]] - the clamped value | ||
|x1= < | |x1= <sqf notrim> | ||
[0, 0, 10] | [5, 0, 10] call BIS_fnc_clamp; // returns 5 | ||
[10, 0, 10] | [0, 0, 10] call BIS_fnc_clamp; // returns 0 | ||
[-5, 0, 10] | [10, 0, 10] call BIS_fnc_clamp; // returns 10 | ||
[15, 0, 10] [ | [-5, 0, 10] call BIS_fnc_clamp; // returns 0 | ||
[15, 0, 10] call BIS_fnc_clamp; // returns 10 | |||
[5, 10, 3] call BIS_fnc_clamp; // returns 10 | |||
</sqf> | |||
|x2= <sqf> | |||
</ | [5, 0, 10] call BIS_fnc_clamp; // 0.0098 ms | ||
0 max 5 min 10; // 0.0011 ms - about 10x faster | |||
</sqf> | |||
|seealso= | |seealso= [[min]] [[max]] | ||
}} | }} |
Latest revision as of 16:49, 21 May 2023
Description
Syntax
- Syntax:
- [value, min, max] call BIS_fnc_clamp
- Parameters:
- value: Number - value to be clamped
- min: Number - (Optional, default 0) lower limit
- max: Number - (Optional, default 0) upper limit
- Return Value:
- Number - the clamped value
Examples
- Example 1:
- Example 2:
Additional Information
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