リスト 【LSL】

れむ

2007年07月01日 02:49


▲LSL目次
llGetListEntryTypeリストの指定要素の型を取得する。 llGetListLengthリストの要素数を取得する。 llListInsertListリストの指定位置へ別のリストを挿入する。 llDeleteSubListリストから指定範囲の要素を削除する。 llListReplaceListリストの一部を置換する。 llListFindListリストから指定要素の位置を返す。 llList2Integerリストから integer型の要素を取り出す。 llList2Floatリストから float型の要素を取り出す。 llList2Keyリストから key型の要素を取り出す。 llList2Stringリストから string型の要素を取り出す。 llList2Rotリストから rotation型の要素を取り出す。 llList2Vectorリストから vector型の要素を取り出す。 llCSV2ListCSV文字列をリストに変換する。 llList2CSVリストを CSV文字列に変換する。 llList2Listリストから指定範囲の要素を取得する。 llListSortリストをソートする。 llListRandomizeリストの要素をランダムに並び替える。 llList2ListStridedリストから指定間隔の要素を抜き出す。
integer llGetListEntryType(list src, integer index)srcリストindexインデックス
リストの指定要素の型を取得します。

▲上へ ■LSL Portal ■LSL Portal (日本語)
integer llGetListLength(list src)srcリスト
リストの要素数を取得します。

▲上へ ■LSL Portal ■LSL Portal (日本語)
list llListInsertList(list dest, list src, integer start)dest挿入される元となるリストsrc挿入するリストstart挿入するインデックス
destの指定位置へsrcを挿入した新しいリストを返します。

▲上へ ■LSL Portal ■LSL Portal (日本語)
list llDeleteSubList(list src, integer start, integer end)dest削除される元となるリストstart開始インデックスend終了インデックス
srcから指定範囲の要素を削除した新しいリストを返します。
    llDeleteSubList([ 0, 1, 2, 3, 4, 5 ], 1, 3);  // [ 0, 4, 5 ]
    llDeleteSubList([ 0, 1, 2, 3, 4, 5 ], 0, -1); // []
    llDeleteSubList([ 0, 1, 2, 3, 4, 5 ], 8, 2);  // [ 3, 4, 5 ]

▲上へ ■LSL Portal ■LSL Portal (日本語)
list llListReplaceList(list dest, list src, integer start, integer end)dest置換される元となるリストsrc置換するリストstart開始インデックスend終了インデックス
destから指定範囲の要素をsrcで置換した新しいリストを返します。
    llListReplaceList([ 0, 1, 2, 3, 4, 5 ], [ "a", "b", "c" ], 1, 3);  // [ 0, "a", "b", "c", 4, 5 ]
    llListReplaceList([ 0, 1, 2, 3, 4, 5 ], [ "a", "b", "c" ], 0, -1); // [ "a", "b", "c" ]
    llListReplaceList([ 0, 1 ], [ "a", "b", "c" ], 10, 10); // [ 0, 1, "a", "b", "c" ]

▲上へ ■LSL Portal ■LSL Portal (日本語)
integer llListFindList(list src, list test)srcリストtest検索するリスト
srcからtestの見つかったインデックス返します。
見つからなかった場合は-1を返します。
値の型及びリスト要素の順も一致する必要があります。

▲上へ ■LSL Portal ■LSL Portal (日本語)
integer llList2Integer(list src, integer index)srcリストindexインデックス
リストから integer型の要素を取り出します。
変換に失敗したときは0を返します。

▲上へ ■LSL Portal ■LSL Portal (日本語)
float llList2Float(list src, integer index)srcリストindexインデックス
リストから float型の要素を取り出します。
変換に失敗したときは0を返します。

▲上へ ■LSL Portal ■LSL Portal (日本語)
key llList2Key(list src, integer index)srcリストindexインデックス
リストから key型の要素を取り出します。
変換に失敗したときはNULL_KEYを返します。

▲上へ ■LSL Portal ■LSL Portal (日本語)
string llList2String(list src, integer index)srcリストindexインデックス
リストから string型の要素を取り出します。
変換に失敗したときは""を返します。

▲上へ ■LSL Portal ■LSL Portal (日本語)
rotation llList2Rot(list src, integer index)srcリストindexインデックス
リストから rotation型の要素を取り出します。
変換に失敗したときはZERO_ROTATIONを返します。

▲上へ ■LSL Portal ■LSL Portal (日本語)
vector llList2Vector(list src, integer index)srcリストindexインデックス
リストから vector型の要素を取り出します。
変換に失敗したときはZERO_VECTORを返します。

▲上へ ■LSL Portal ■LSL Portal (日本語)
list llCSV2List(string src)srcCSV形式(カンマ区切り)文字列
CSV形式の文字列をリストに変換します。

llParseStringKeepNulls(src, [ "," ], []) とほぼ同様の処理が行われますが、
rotation 型や vector 型と認識できる場合は、型単位で分割されます。
(正確には ''以降の ',' までを1つとして認識するようです)
    llCSV2List("0,1,,5,");  // [ 0, 1, , 5,  ]  length = 5
    llCSV2List("0,1,7,8,9");     // [ 0, 1, 7, 8, 9 ]     length = 5
    llCSV2List("0,1,
        
LSLリファレンス