Difference between revisions of "LlSetRot/ja"

From Second Life Wiki
Jump to navigation Jump to search
(New page: {{LSL_Function/ja|func_id=61|func_sleep=0.2|func_energy=10.0|func=llSetRot |p1_type=rotation|p1_name=rot |func_desc=プリムの回転に'''rot'''を設定します。 |return_text|spec |s...)
 
m (カテゴリ変更)
Line 41: Line 41:
|also_articles
|also_articles
|notes
|notes
|cat1=Movement
|cat1=Movement/ja
|cat2=Rotation
|cat2=Rotation/ja
|cat3
|cat3
|cat4
|cat4
}}
}}

Revision as of 05:05, 10 April 2010

要約

関数: llSetRot( rotation rot );

プリムの回転にrotを設定します。

• rotation rot

警告

  • この関数は 0.2 秒間、スクリプトを停止します。
  • プリムが装着されている場合、この関数はアバタの回転によって相殺します。
  • プリムがルートプリムではない場合、ルートプリムのローカル回転によって相殺されます。回避策はルートプリムの回転で割ることです。
    • ルートプリムと相対的に子プリムの回転を設定しようとしている場合、ルートプリムの回転でローカル回転を割ります。
    • グローバル回転を子プリムの回転へ設定しようとしている場合、2倍にしたルートプリムの回転でグローバル回転を割る必要があります。
    • たとえグローバル回転を子プリムの回転に設定するとしても、子プリムの回転を設定するにはllSetLocalRotを使うとよりうまくいきます。 (その場合、ルートプリムの回転と掛けます。)
    • 装着されたオブジェクトの、ルートプリムのローカル回転を取得するのは容易ではありません。(ほかにはルートプリムから取得する方法が存在します)
  • 小さく回転するには、変更する時間帯の間隔に応じて、基準点を上げます。6°より下に制限しているように見せることはできません。

サンプル

回転を1°ずつ増加するプリムに、このスクリプトをドロップします。 <lsl> rotation rot_xyzq;

default {

   state_entry()
   {
       vector xyz_angles = <0,1.0,0>; // This is to define a 1 degee change
       vector angles_in_radians = xyz_angles*DEG_TO_RAD; // Change to Radians
       rot_xyzq = llEuler2Rot(angles_in_radians); // Change to a Rotation
   }
   touch_start(integer s)
   {
       llSetRot(llGetRot()*rot_xyzq); //Do the Rotation...
   }

}

</lsl>

関連項目

関数

•  llGetRot
•  llSetLocalRot

特記事項

Search JIRA for related Issues

Signature

function void llSetRot( rotation rot );
この翻訳は 原文 と比べて古いですか?間違いがありますか?読みにくいですか?みんなで 修正 していきましょう! (手順はこちら)
この項目はあなたにとって参考にならない項目ですか?もしかしたらLSL Wikiの関連した項目が参考になるかもしれません。