ソラマメブログ
< 2007年10>
S M T W T F S
  1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30 31      

  
Posted by at

2007年10月23日

リスト(LSL リファレンス)

 
・リストを連結する。
	list src = ["dog", "cat","fish"]; 
	src+=["cow"];
	src は ["dog", "cat","fish","cow"] となる。

・リストを初期化する。
	list src=[];

リスト系の関数
名称内容
llList2Stringリストの指定要素をString型にキャストして取り出す。
llList2Floatリストの指定要素をFloat型にキャストして取り出す。
llList2Integerリストの指定要素をInteger型にキャストして取り出す。
llList2Keyリストの指定要素をKey型にキャストして取り出す。
llList2Vectorリストの指定要素をVector型にキャストして取り出す。
llList2Rotリストの指定要素をrotation型にキャストして取り出す。
llList2Listリストの指定部分を抜き出す。
llList2ListStridedリストの要素をブロック単位で切り分けて抜き出す。
LlGetListLengthリストの要素数を返す。
llListFindListリストの中を検索し、要素番号を返す。
llParseString2List指定した区切り文字でリストを作成する。
llListReplaceListリストの指定要素を置換する。
llDeleteSubListリストの指定要素を削除する。
llListInsertListリストに別のリストを挿入する。
llListSortリストをソートする。
llListRandomizeリストをランダムに並び替える。
llListStatisticsリストの各種統計情報を返す。

llList2String llList2Float llList2Integer llList2Key llList2Vector llList2Rot <機能>  リストの指定要素をそれぞれの型にキャストして取り出す。 <構文>
stringllList2String(list src, integer index)string型にキャスト
floatllList2Float(list src, integer index)float型にキャスト
integerllList2Integer(list src, integer index)integer型にキャスト
keyllList2Key(list src, integer index)key型にキャスト
vectorllList2Vector(list src, integer index)vector型にキャスト
rotllList2Rot(list src, integer index)rotation型にキャスト
* src : 元となるリストを指定する。 * index : 要素番号を指定する。(先頭要素は、0) <例> list src = ["dog", "cat","fish","cow","bird","monkey"];  string hoge = llList2String(src,2); // hogeには "fish" が入る。 ページ先頭へ
llList2List <機能> リストの指定部分を抜き出す。 <構文> list llList2List(list src, integer start, integer end) * src : 元となるリストを指定する。 * start : 開始の要素番号を指定する。(先頭要素は、0) * end : 終了の要素番号を指定する。 <例> list src = ["dog", "cat","fish","cow","bird","monkey"]; list hoge = llList2List(src, 2, 5); // hogeには ["fish","cow","bird","monkey"] が入る。 list hoge = llList2List(src, 4, -1); // hogeには ["bird","monkey"] が入る。 list hoge = llList2List(src, 4, 1); // hogeには ["dog", "cat","bird","monkey"] が入る。 ページ先頭へ
llList2ListStrided <機能> リストの要素をブロック単位で切り分けて抜き出す <構文> list llList2ListStrided(list src, integer start, integer end, integer stride) * src : 元となるリストを指定する。 * start : 開始の要素番号を指定する。(先頭要素は、0) * end : 終了の要素番号を指定する。 * stride: 要素のブロック単位を指定する。 <例> 下記の例では、全要素を2個のブロック単位に分けたときの最初の要素を返す。 list src = ["dog", "cat","fish","cow","bird","monkey"]; list hoge = llList2ListStrided(src, 0, -1, 2); // hogeには ["dog", "fish","bird"] が入る。 ページ先頭へ
llGetListLength <機能> リストの要素数を返す。 <構文> integer llGetListLength(list src) * src : 元となるリストを指定する。 <例> list src = ["dog", "cat","fish","cow","bird","monkey"];  integer hoge = llGetListLength(src); // hogeには 6 が入る。 ページ先頭へ
llListFindList <機能> リストの中を検索し、要素番号を返す。 <構文> integer llListFindList(list src, list srch) * src : 元となるリストを指定する。 * srch : 検索キーワードを指定する。 <例> list src = ["dog", "cat","fish","cow","bird","monkey"]; list srch = ["bird"]; integer hoge = llListFindList(src,srch); // hogeには 4 が入る。 list srch = ["wolf"]; integer hoge = llListFindList(src,srch); // hogeには -1 が入る。 * キーワードが見つからない場合は、-1を返す。 ページ先頭へ
llParseString2List <機能> 指定した区切り文字でリストを作成する。 <構文> list llParseString2List(string src, list separators, list spacers) * src : 元となる文字列を指定する。 * separators : 区切り文字を指定する。 * spacers : 区切り文字もリストの一部として含めたい場合は、こちらに区切り文字を指定する。 <例> string src = "dog/cat/fish"; list hoge = llParseString2List(src,["/"],[]); // hogeには ["dog", "cat","fish"] が入る。 list hoge = llParseString2List(src,[],["/"]); // hogeには ["dog","/", "cat","/","fish"] が入る。 ページ先頭へ
llListReplaceList <機能> リストの指定要素を置換する。 <構文> list llListReplaceList(list dest, list src, integer start, integer end) * dest : 置換先のリストを指定する。 * src : 置換後のリストを指定する。 * start : 置換の開始要素番号を指定する。(先頭要素は、0) * end : 置換の終了要素番号を指定する。 <例> list dest = ["dog", "cat","fish","cow"]; list src = ["bird"]; list hoge = llListReplaceList(dest,src,2,2); // hogeには ["dog", "cat","bird","cow"] が入る。 ページ先頭へ
llDeleteSubList <機能> リストの指定要素を削除する。 <構文> list llDeleteSubList(list src, integer start, integer end) * src : 元となるリストを指定する。 * start : 削除する要素の開始番号を指定する。(先頭要素は、0) * end : 削除する要素の終了番号を指定する。 <例> list src = ["dog", "cat","fish","cow"]; list hoge = llDeleteSubList(src,2,3); // hogeには ["dog", "cat"] が入る。 ページ先頭へ
llListInsertList <機能> リストに別のリストを挿入する。 <構文> list llListInsertList(list dest, list src, integer index) * dest : 挿入先のリストを指定する。 * src : 挿入元のリストを指定する。 * index : 挿入先の要素番号を指定する。(先頭要素は、0) <例> list dest = ["dog", "cat","fish"]; list src = ["lion","horse"]; list hoge = llListInsertList(dest,src,2); // hogeには ["dog", "cat","lion","horse","fish"]; が入る。 ページ先頭へ
llListSort <機能> リストをソートする。 <構文> list llListSort(list src, integer stride, integer ascending) * src : 挿入元のリストを指定する。 * stride : 要素のブロック単位を指定する。 * ascending : 昇順か降順を指定する。(昇順:TRUE,降順:FALSE) <例> list src = ["2","dog","4","cat","1","fish","3","cow"]; list hoge = llListSort(src,1,TRUE); // hogeには ["1","2","3","4","cat","cow","dog","fish"]; が入る。 下記の例では、要素を2個のブロック単位に分けソートする。 list hoge = llListSort(src,2,TRUE); // hogeには ["1","fish","2","dog","3","cow","4","cat"]; が入る。 ページ先頭へ
llListRandomize <機能> リストをランダムに並び替える。 <構文> list llListRandomize(list src, integer stride) * src : 挿入元のリストを指定する。 * stride : 要素のブロック単位を指定する。 <例> list src = ["2","dog","4","cat","1","fish","3","cow"]; list hoge = llListRandomize(src,2); ページ先頭へ
llListStatistics <機能> リストの各種統計情報を返す。(integer型,float型のみ有効) <構文> float llListStatistics(integer operation, list src) * operation : 統計の種類を指定する。 * src : 元となるリストを指定する。 [operation定数]
Statistical OperationValueDescription
LIST_STAT_RANGE0リストの範囲を返す。
LIST_STAT_MIN1最小値を返す。
LIST_STAT_MAX2 最大値を返す。
LIST_STAT_MEAN3平均値の値を返す。
LIST_STAT_MEDIAN4リストの中間の値を返す。
LIST_STAT_STD_DEV5標準偏差を返す。
LIST_STAT_SUM6合計値を返す。
LIST_STAT_SUM_SQUARES72乗した値の合計値を返す。
LIST_STAT_NUM_COUNT8floar型とinteger型の要素数を返す。
LIST_STAT_GEOMETRIC_MEAN9幾何平均を返す。
<例> list src = [1,5,2,3,4]; float hoge = llListStatistics(LIST_STAT_RANGE,src); // hogeには 4.0 が入る。 float hoge = llListStatistics(LIST_STAT_MIN,src); // hogeには 1.0 が入る。 float hoge = llListStatistics(LIST_STAT_MAX,src); // hogeには 5.0 が入る。 float hoge = llListStatistics(LIST_STAT_MEAN,src); // hogeには 3.0 が入る。 float hoge = llListStatistics(LIST_STAT_MEDIAN,src); // hogeには 3.0 が入る。 float hoge = llListStatistics(LIST_STAT_STD_DEV,src); // hogeには 1.58 が入る。 float hoge = llListStatistics(LIST_STAT_SUM,src); // hogeには 15.0 が入る。 float hoge = llListStatistics(LIST_STAT_SUM_SQUARES,src); // hogeには 55.0 が入る。 float hoge = llListStatistics(LIST_STAT_NUM_COUNT,src); // hogeには 5.0 が入る。 float hoge = llListStatistics(LIST_STAT_GEOMETRIC_MEAN,src); // hogeには 2.6 が入る。 ページ先頭へ
  

Posted by Zero2000 Kidd at 23:31Comments(0)LSL リファレンス

2007年10月23日

文字列(LSL リファレンス)

 
・文字列を連結する。
	string Name = "Hello" + " " + "World";
	(文字列の連結にはプラス記号(+)を使用する)
	Name は "Hello World" となる。

・文字列の初期化。
	string Fullname = "";

・特殊文字
    \t	タブ
    \n	改行
    \"	ダブルコーテーション
    \\	バックスラッシュ

文字列系の関数
名称内容
llStringLength文字列の長さを取得する。
llGetSubString文字列の一部を切り出す。
llSubStringIndex文字列の中から指定した文字の位置を返す。
llDeleteSubString文字列の一部を削除する。
llStringTrim文字列中のスペースを削除する。
llToLower指定した半角文字列を小文字に変換する。
llToUpper指定した半角文字列を大文字に変換する。
llUnescapeURLURLエンコード(UTF-8)された文字列をデコードする。

llStringLength <機能>  文字列の長さを取得する。 <構文>  integer llStringLength(string src) * src : 元となる文字列を指定する。 <例>  string src = "Hello World";   integer hoge = llStringLength(src); // hogeには 11 が入る。 ページ先頭へ
llGetSubString <機能>  文字列の一部を切り出す。 <構文>  string llGetSubString(string src, integer start, integer end) * src : 元となる文字列を指定する。 * start : 開始位置の番号を指定する。(先頭文字は0番目となる) * end : 終了位置の番号を指定する。 <例>  string src = "Hello World";   string hoge = llGetSubString(src,1,4); // hogeには "ello" が入る。 ページ先頭へ
llSubStringIndex <機能>  文字列の中から指定した文字の位置を返す。指定文字が見つからない場合は、-1を返す。  返される位置は、0から始まるので注意。 <構文>  integer llSubStringIndex(string source, string pattern) * source: 検索対象の文字列を指定する。 * pattern: 検索する文字列を指定する。 <例>  string src = "abcdefg";   integer index= llSubStringIndex(src,"cd"); // indexには 2 が入る。  integer index= llSubStringIndex(src,"xyz"); // indexには -1 が入る。 ページ先頭へ
llDeleteSubString <機能>  文字列の一部を削除する。 <構文>  string llDeleteSubString(string src, integer start, integer end) * src : 元となる文字列を指定する。 * start : 開始位置の番号を指定する。(先頭文字は0番目となる) * end : 終了位置の番号を指定する。 <例>  string src = "Hello World";   string hoge = llDeleteSubString(src,1,4); // hogeには "H World" が入る。   ページ先頭へ
llStringTrim <機能>  文字列中のスペースを削除する。 <構文>  string llStringTrim(string src, integer type) * src : 元となる文字列を指定する。 * type : 削除のタイプを指定する。 [type定数] STRING_TRIM_HEAD 前のスペース STRING_TRIM_TAIL 後のスペース STRING_TRIM 前後のスペース <例>  string src = " Hello World ";   string hoge = llStringTrim(src,STRING_TRIM_HEAD); // hogeには "Hello World " が入る。  string hoge = llStringTrim(src,STRING_TRIM_TAIL); // hogeには " Hello World" が入る。  string hoge = llStringTrim(src,STRING_TRIM); // hogeには "Hello World" が入る。 ページ先頭へ
llToLower <機能>  指定した半角文字列を小文字に変換する。 <構文>  string llToLower(string src) * src : 元となる文字列を指定する。 <例>  string src = "HELLO WORLD";   string hoge = llToLower(src); // hogeには "hello world" が入る。   ページ先頭へ
llToUpper <機能>  指定した半角文字列を大文字に変換する。 <構文>  string llToUpper(string src) * src : 元となる文字列を指定する。 <例>  string src = "hello world";   string hoge = llToUpper(src); // hogeには "HELLO WORLD" が入る。   ページ先頭へ
llUnescapeURL <機能>  URLエンコード(UTF-8)された文字列をデコードする。  SLで日本語表示を行うときに良く使用される。 <構文>  string llUnescapeURL(string url) * url : URLエンコード文字列を指定します。 <例>  // "こんにちは"と表示する。  llSay(0,llUnescapeURL("%e3%81%93%e3%82%93%e3%81%ab%e3%81%a1%e3%81%af"));  以下のサイトでエンコードが可能。  TAG index(URLエンコード・デコードフォーム)  (文字コードは,UTF-8にする)   ページ先頭へ
  

Posted by Zero2000 Kidd at 23:40Comments(0)LSL リファレンス