LlRotTarget/ja
		
		
		
		
		
		Jump to navigation
		Jump to search
		
  
    
		
	
| LSL ポータル | 関数 | イベント | 型 | 演算子 | 定数 | 実行制御 | スクリプトライブラリ | カテゴリ別スクリプトライブラリ | チュートリアル | 
要約
関数: integer llRotTarget( rotation rot, float error );
この関数で、ある回転に到達したときに、スクリプトにそれを知らせることができます。
rot を error と一緒に登録し、登録解除されるまで at_rot_target や not_at_rot_target を継続的に発生させます。
llRotTargetRemove を使って目標を登録解除するためのハンドラを integer で返します。
| • rotation | rot | – | 目標とする回転 | |
| • float | error | – | rot に到達したか決める角度誤差をラジアンで | 
同じような関数が位置についてもあります: llTarget
この関数はオブジェクトを回転させません。回転させるには、llSetRot 、llRotLookAt 、llLookAt を使用してください。
サンプル
vector standrot = <0.0, 0.0, 0.0>;
vector fliprot = <45.0, 0.0, 0.0>;
// Hypatia Callisto 作の、簡単な 2 個のステートからなる回転検知と回転
// 作動すると、目標回転を検知します。
// at_rot_target, not_at_rot_target, llRotTarget, llRotTargetRemove
// の純粋なサンプルがほとんどなかったので、サンプルを書きました。
integer rottarget;
default
{
    state_entry(){ 
        rottarget = llRotTarget(llEuler2Rot(fliprot*DEG_TO_RAD), 0.1);
        llSetPrimitiveParams ([PRIM_ROTATION, llEuler2Rot(standrot*DEG_TO_RAD)]); // 最初の回転位置まで回転する
    }
    not_at_rot_target()
    { 
        llRotTargetRemove( rottarget );
        llOwnerSay("not there"); //目標ではない
    }
        
    touch_start (integer total_number)
    {
        state rotatestate; // ステートを切り替えて、新しい位置に
    }
}
             
      
state rotatestate 
{ 
    state_entry(){ 
        rottarget = llRotTarget(llEuler2Rot(fliprot*DEG_TO_RAD), 0.1);
        llSetPrimitiveParams ([PRIM_ROTATION, llEuler2Rot(fliprot*DEG_TO_RAD)]); // 新しい回転位置まで回転する
    }
    
    at_rot_target(integer tnum, rotation targetrot, rotation ourrot)
    { 
        llRotTargetRemove( rottarget );
        llOwnerSay("there"); //目標に到達
    }
    touch_start(integer touched){ 
        state default; 
    }
    
}
関連項目
イベント
| • at_rot_target | not_at_rot_target | – | 回転目標に達したときのイベント | |
| • at_target | not_at_target | – | 位置目標に達したときのイベント | 
関数
| • | llRotTargetRemove | – | 回転目標を登録解除します | |
| • | llTarget | – | 位置目標を登録します | |
| • | llTargetRemove | – | 位置目標を登録解除します | 
特記事項
この項目はあなたにとって参考にならない項目ですか?もしかしたらLSL Wikiの関連した項目が参考になるかもしれません。