Difference between revisions of "LlFloor"
Jump to navigation
Jump to search
All Issues ~ Search JIRA for related Bugs
Omei Qunhua (talk | contribs) (Promote integer casting for positive values) |
m |
||
(4 intermediate revisions by 3 users not shown) | |||
Line 7: | Line 7: | ||
|return_text=that is the integer value of {{LSLP|val}} rounded towards negative infinity <code>(return <= {{LSLPT|val}})</code>. | |return_text=that is the integer value of {{LSLP|val}} rounded towards negative infinity <code>(return <= {{LSLPT|val}})</code>. | ||
|spec | |spec | ||
|caveats | |caveats= | ||
|examples=< | * The returned value is -2147483648 (0x80000000) if the arithmetic result is outside of the range of valid integers (-2147483648 to 2147483647 inclusive). | ||
|examples=<source lang="lsl2">default | |||
{ | { | ||
state_entry() | state_entry() | ||
{ | { | ||
llSay(0,"The floor value of -4.5 is: "+(string)llFloor(-4.5) ); | llSay(0, "The floor value of -4.5 is: "+(string)llFloor(-4.5) ); | ||
//Returns "The floor value of -4.5 is: -5" | //Returns "The floor value of -4.5 is: -5" | ||
llSay(0,"The floor value of -4.9 is: "+(string)llFloor(-4.9) ); | llSay(0, "The floor value of -4.9 is: "+(string)llFloor(-4.9) ); | ||
//Returns "The floor value of -4.9 is: -5" | //Returns "The floor value of -4.9 is: -5" | ||
llSay(0,"The floor value of -4.1 is: "+(string)llFloor(-4.1) ); | llSay(0, "The floor value of -4.1 is: "+(string)llFloor(-4.1) ); | ||
//Returns "The floor value of -4.1 is: -5" | //Returns "The floor value of -4.1 is: -5" | ||
llSay(0,"The floor value of 4.5 is: "+(string)llFloor(4.5) ); | llSay(0, "The floor value of 4.5 is: "+(string)llFloor(4.5) ); | ||
//Returns "The floor value of 4.5 is: 4" | //Returns "The floor value of 4.5 is: 4" | ||
llSay(0,"The floor value of 4.9 is: "+(string)llFloor(4.9) ); | llSay(0, "The floor value of 4.9 is: "+(string)llFloor(4.9) ); | ||
//Returns "The floor value of 4.9 is: 4" | //Returns "The floor value of 4.9 is: 4" | ||
llSay(0,"The floor value of 4.1 is: "+(string)llFloor(4.1) ); | llSay(0, "The floor value of 4.1 is: "+(string)llFloor(4.1) ); | ||
//Returns "The floor value of 4.1 is: 4" | //Returns "The floor value of 4.1 is: 4" | ||
} | } | ||
}</ | }</source> | ||
|helpers | |helpers | ||
|constants | |constants |
Latest revision as of 01:24, 22 January 2015
LSL Portal | Functions | Events | Types | Operators | Constants | Flow Control | Script Library | Categorized Library | Tutorials |
Summary
Function: integer llFloor( float val );9 | Function ID |
0.0 | Forced Delay |
10.0 | Energy |
Returns an integer that is the integer value of val rounded towards negative infinity (return <= val)
.
• float | val | – | Any valid float value |
Caveats
- The returned value is -2147483648 (0x80000000) if the arithmetic result is outside of the range of valid integers (-2147483648 to 2147483647 inclusive).
Examples
default
{
state_entry()
{
llSay(0, "The floor value of -4.5 is: "+(string)llFloor(-4.5) );
//Returns "The floor value of -4.5 is: -5"
llSay(0, "The floor value of -4.9 is: "+(string)llFloor(-4.9) );
//Returns "The floor value of -4.9 is: -5"
llSay(0, "The floor value of -4.1 is: "+(string)llFloor(-4.1) );
//Returns "The floor value of -4.1 is: -5"
llSay(0, "The floor value of 4.5 is: "+(string)llFloor(4.5) );
//Returns "The floor value of 4.5 is: 4"
llSay(0, "The floor value of 4.9 is: "+(string)llFloor(4.9) );
//Returns "The floor value of 4.9 is: 4"
llSay(0, "The floor value of 4.1 is: "+(string)llFloor(4.1) );
//Returns "The floor value of 4.1 is: 4"
}
}
Notes
- For positive values, it is quicker and shorter to simply cast the float to an integer. i=(integer)f is 32 bytes shorter than i=llFloor(f) (in Byte Code) and about 30 times faster in execution, while giving the same result.