Difference between revisions of "LlGetRot/ja"
< LlGetRot
Jump to navigation
Jump to search
Asuka Neely (talk | contribs) (New page: {{multi-lang}} {{LSL_Function/ja |func=llGetRot |sort=GetRot |func_id=62|func_sleep=0.0|func_energy=10.0 |func_desc |func_footnote |return_type=rotation |return_text=[[Viewer coordinate fr...) |
|||
(4 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
{{LSL_Function/ja | {{LSL_Function/ja | ||
|func=llGetRot | |func=llGetRot | ||
Line 7: | Line 6: | ||
|func_footnote | |func_footnote | ||
|return_type=rotation | |return_type=rotation | ||
|return_text=[[Viewer coordinate frames#Region|リージョン]] | |return_text=[[Viewer coordinate frames/ja#Region|リージョン]] 軸を基準としたプリムの回転 | ||
|constants | |constants | ||
|spec | |spec | ||
|caveats | |caveats | ||
|examples= | |examples= | ||
< | <source lang="lsl2"> //-- オブジェクトを回転させ、一番近い方位 (北、東、南、西) に合わせます | ||
//-- | //-- 建造物がルートオブジェクトに向かいあわせになっていることが前提です | ||
default{ | default{ | ||
state_entry() | state_entry() | ||
{ | { | ||
llSay( 0, " | llSay( 0, "編集画面で回転させ、タッチしてこれを一番近い方位に合わせてください" ); | ||
} | } | ||
touch_start( integer vIntTouches ) | touch_start( integer vIntTouches ) | ||
{ | { | ||
//-- | //-- 回転を x/y/z ラジアンに変換します | ||
vector vRadBase = llRot2Euler( llGetRot() ); | vector vRadBase = llRot2Euler( llGetRot() ); | ||
//-- | //-- Z 軸を一番近い 90° (PI_BY_TWO = 90° のラジアン表記) に丸めます | ||
llSetRot( llEuler2Rot( <0.0, 0.0, llRound( vRadBase.z / PI_BY_TWO ) * PI_BY_TWO > ) ); | llSetRot( llEuler2Rot( <0.0, 0.0, llRound( vRadBase.z / PI_BY_TWO ) * PI_BY_TWO > ) ); | ||
} | } | ||
}</ | }</source> | ||
|helpers | |helpers | ||
|also_header | |also_header | ||
Line 43: | Line 42: | ||
|also_articles | |also_articles | ||
|also_footer | |also_footer | ||
|notes= | |notes=[[Mouselook|マウスルック]] ([[llForceMouselook/ja|llForceMouselook]] 参照 ) でアタッチメントの llGetRot をとると、アバターが見ている方向を返します。 | ||
クライアント内エディタのツールチップが誤っていると、それは物理オブジェクトのスクリプトに影響します。 | |||
|mode | |mode | ||
|deprecated | |deprecated | ||
|location | |location | ||
|cat1=Movement | |cat1=Movement | ||
|cat2=Rotation | |cat2=Rotation | ||
|cat3 | |cat3=Prim | ||
|cat4 | |cat4 | ||
|cat5 | |cat5 | ||
|cat6 | |cat6 | ||
}} | }} |
Latest revision as of 12:52, 25 February 2016
LSL ポータル | 関数 | イベント | 型 | 演算子 | 定数 | 実行制御 | スクリプトライブラリ | カテゴリ別スクリプトライブラリ | チュートリアル |
サンプル
//-- オブジェクトを回転させ、一番近い方位 (北、東、南、西) に合わせます
//-- 建造物がルートオブジェクトに向かいあわせになっていることが前提です
default{
state_entry()
{
llSay( 0, "編集画面で回転させ、タッチしてこれを一番近い方位に合わせてください" );
}
touch_start( integer vIntTouches )
{
//-- 回転を x/y/z ラジアンに変換します
vector vRadBase = llRot2Euler( llGetRot() );
//-- Z 軸を一番近い 90° (PI_BY_TWO = 90° のラジアン表記) に丸めます
llSetRot( llEuler2Rot( <0.0, 0.0, llRound( vRadBase.z / PI_BY_TWO ) * PI_BY_TWO > ) );
}
}
注意点
マウスルック (llForceMouselook 参照 ) でアタッチメントの llGetRot をとると、アバターが見ている方向を返します。 クライアント内エディタのツールチップが誤っていると、それは物理オブジェクトのスクリプトに影響します。
関連項目
特記事項
この項目はあなたにとって参考にならない項目ですか?もしかしたらLSL Wikiの関連した項目が参考になるかもしれません。