Exemples de manipulations de la rotation
$ExemplesRotations() { //L'instruction suivante récupère la rotation d'une prim rotation rRotationActuelle = llGetRot(); //on peut afficher cette rotation llOwnerSay("rRotationActuelle = " + (string)rRotationActuelle); //Convertir cette rotation en vecteur vector vRot2vect = llRot2Euler(rRotationActuelle); //mais cela donne une rotation en radian llOwnerSay("Vecteur en radians = " + (string)vRot2vect); //Il vaut mieux avoir des degrés pour travailler vRot2vect = llRot2Euler(rRotationActuelle) * RAD_TO_DEG; llOwnerSay("Vecteur en degrés = " + (string)vRot2vect); //Ce résultat est à comparer à celui obtenu dans Modifier : Objet : Rotation (degrés)
//A partir de là, on fait les opérations voulues sur le vecteur en degrés (comme à l'école) //Multiplier les 3 angles par 2 vector vVectX2 = vRot2vect * 2; llOwnerSay("vVectX2 = " + (string)vVectX2); //Ajouter 12.5 degrés à X, 25 degrés à Y et 33.3 degrés à Z vector vVectPlus = vVectX2 + <12.5, 25.0, 33.3>; llOwnerSay("Vecteur vVectPlus = " + (string)vVectPlus); //Et toutes autres sortes d'opérations (voir Vecteurs dans le Wiki) //Il est temps maintenant de retourner notre vecteur vers une rotation //On le convertit en radian puis en rotation rotation rRotationSortie = llEuler2Rot(vVectPlus * DEG_TO_RAD); llOwnerSay("Rotation en sortie = " + (string)rRotationSortie); //Appliquer la rotation calculée llSetRot(rRotationSortie); //Ainsi par cette méthode on n'a jamais besoin de s'occuper des quaternions //Garmin Kawaguichi }
default { state_entry() { //Mettre la rotation àX=0.0 Y=0.0 Z=0.0 llSetRot(ZERO_ROTATION); //Exemples de manipulation de rotation llOwnerSay("__________ Exemples de manipulations de la rotation __________"); //Appel une fonction utlisateur $ExemplesRotations(); } touch_start(integer iNbClick) { $ExemplesRotations(); } on_rez(integer iNumLiaison) { llResetScript(); } }
|
ce n'est pas un script pratique mais plutôt un exemple. Mettez-le dans un cube et cliquez. (Ça fait passer le temps
Sport media | Giftofvision, ALWAYS LIKE A SALE