Difference between revisions of "LlList2Float"

From Second Life Wiki
Jump to navigation Jump to search
(The third level caveat doesn't make sense without the second level caveat that was deleted. Should have block of text devoted to supported string formats under spec, will work on later.)
m (<lsl> tag to <source>)
 
(4 intermediate revisions by 2 users not shown)
Line 1: Line 1:
{{Issues/SVC-798}}{{LSL_Function/list/element|src|index|float|return={{HoverText|zero|0.0}}}}
{{LSL_Function
{{LSL_Function
|inject-2={{Issues/SVC-798}}{{LSL_Function/list/element|src|index|float|return={{HoverText|zero|0.0}}}}
|func_id=187|func_sleep=0.0|func_energy=10.0
|func_id=187|func_sleep=0.0|func_energy=10.0
|func=llList2Float|return_type=float|p1_type=list|p1_name=src|p2_type=integer|p2_name=index
|func=llList2Float|return_type=float|p1_type=list|p1_name=src|p2_type=integer|p2_name=index
|func_footnote
|func_footnote=
{{LSL Tip|Please read [[User:Kireji_Haiku/How_to_deal_with_lists_in_LSL|this intro of how to iterate over a list in LSL]].}}
|func_desc
|func_desc
|sort=List2Float
|sort=List2Float
|return_text=that is at '''index''' in '''src'''.
|return_text=that is at {{LSLP|index}} in {{LSLP|src}}.
|spec
|spec
|caveats=*A string of hexadecimal notation (e.g. "0x12A") or scientific notation (e.g. "6.2e+1") will be parsed as a decimal float.
|caveats=*A string of hexadecimal notation (e.g. "0x12A") or scientific notation (e.g. "6.2e+1") will be parsed as float and contain the correct value{{Footnote|Correct with in the limitations of the [[float]] type.}}.
|constants
|constants
|examples=
|examples=
<lsl>// Best viewed in Chat History (ctrl-h)
<source lang="lsl2">// Best viewed in Chat History (ctrl-h)
default
default
{
{
Line 28: Line 29:
         }
         }
     }
     }
}</lsl>
}</source>
|helpers
|helpers
|also_functions=
|also_functions=

Latest revision as of 11:42, 22 January 2015

Summary

Function: float llList2Float( list src, integer index );

Returns a float that is at index in src.

• list src List containing the element of interest.
• integer index Index of the element of interest.

index supports negative indexes.
If index describes a location not in src then zero is returned.
If the type of the element at index in src is not a float it is typecast to a float. If it cannot be typecast zero is returned.

KBcaution.png Important: Please read this intro of how to iterate over a list in LSL.

Specification

Index Positive Negative
First 0 -length
Last length - 1 -1

Indexes

  • Positive indexes count from the beginning, the first item being indexed as 0, the last as (length - 1).
  • Negative indexes count from the far end, the first item being indexed as -length, the last as -1.

Caveats

  • If index is out of bounds the script continues to execute without an error message.
  • A string of hexadecimal notation (e.g. "0x12A") or scientific notation (e.g. "6.2e+1") will be parsed as float and contain the correct value[1].
All Issues ~ Search JIRA for related Bugs

Examples

// Best viewed in Chat History (ctrl-h)
default
{
    state_entry()
    {
        list my_list = ["a", 1, 2.0, <1,2,3>, <1,2,3,4>, llGetOwner()];
        integer i = ~llGetListLength(my_list);
        while (++i)
        {
            llOwnerSay("string=" + llList2String(my_list,i)
                        + "\n   integer=" + (string)llList2Integer(my_list,i)
                        + "\n   float=" + (string)llList2Float(my_list,i)
                        + "\n   vector=" + (string)llList2Vector(my_list,i)
                        + "\n   rot=" + (string)llList2Rot(my_list,i)
                        + "\n   key=" + (string)llList2Key(my_list,i) );
        }
    }
}

See Also

Functions

•  llGetListEntryType
•  llList2Integer
•  llList2String

Articles

•  Negative Index

Deep Notes

All Issues

~ Search JIRA for related Issues
   Perform typecasting with all llList2* functions

Footnotes

  1. ^ Correct with in the limitations of the float type.

Signature

function float llList2Float( list src, integer index );