Etant une vraie buse en trigonométrie, je sollicite votre bienveillance, votre aide et votre savoir.
Quelqu'un pourrait-il me donner les formules mathématiques et magiques permettant de créer un déclencheur dont on connait la position de deux coins opposés dans la longueur et qui doit faire 1 mètre de large ?
Note : Je n'ai rien contre les buses, j'aime bien les oiseaux : c''est l'expression qui est comme ça, je n'y peux rien.
Et la trigo alors
- =[TTK]= Freshmeat
- Retraité
- Messages : 474
- Enregistré le : lun. 1 mars 2010, 13:49
Et la trigo alors
Modifié en dernier par =[TTK]= Freshmeat le mer. 19 mai 2010, 09:20, modifié 1 fois.
Les gens n'accordent guère d'importance à la vie, la preuve : quand ils la perdent, ils ne la réclament jamais.
[Jean Deluca]
[Jean Deluca]
- =[TTK]= Memphis007
- Grand TranKilou
- Âge : 44
- Messages : 3351
- Enregistré le : mer. 13 janv. 2010, 15:29
- Humeur : Binaire
- Localisation : 127.0.0.1
- Contact :
Re: Et la trigo alors
C'est pas que je veux pas t'aider, mais j'ai rien capté
Si ya pas de shell, ya pas de plaisir...
Fingers in the noise. Maxime verdâtre.
Fingers in the noise. Maxime verdâtre.
- =[TTK]= Freshmeat
- Retraité
- Messages : 474
- Enregistré le : lun. 1 mars 2010, 13:49
Re: Et la trigo alors
C'est pas grave, je crois que j'ai trouvé un solution à mon problème.
Je vous tiendrai au courrant dans ma prochaine mission.
En plus M. Le_Culto a posté la réponse :
Avec "a" et "b" les marqueurs opposés:
Et le sujet complet ici
Je vous tiendrai au courrant dans ma prochaine mission.
En plus M. Le_Culto a posté la réponse :
Avec "a" et "b" les marqueurs opposés:
Code : Tout sélectionner
// Largeur du marqueur, en mètres
_largeur = 10;
// Calcul de la longueur du marqueur (Pythagore)
_longueur = sqrt ( ((getmarkerpos "b" select 0) - (getmarkerpos "a" select 0))^2
+ ((getmarkerpos "b" select 1) - (getmarkerpos "a" select 1))^2 );
// Calcul du vecteur AB, qui fait la longueur du rectangle
_vecteur = [ (getmarkerpos "b" select 0) - (getmarkerpos "a" select 0) ];
_vecteur = _vecteur + [ (getmarkerpos "b" select 1) - (getmarkerpos "a" select 1) ];
// Calcul de l'angle du vecteur Ab
_angle1 = (_vecteur select 0) atan2 (_vecteur select 1) + 360;
_angle1 = _angle1 mod 360;
// Calcul de l'angle du vecteur AC (angle de AB + 90°)
_angle2 = _angle1 + 90;
_angle2 = _angle2 mod 360;
// Calcul des coordonnées du point C
_x = (sin _angle2) * _largeur + (getmarkerpos "a" select 0);
_y = (cos _angle2) * _largeur + (getmarkerpos "a" select 1);
// Calcul des coordonnées du centre du rectangle
_centre = [ ( _x + (getmarkerpos "b" select 0) ) /2 ];
_centre = _centre + [ ( _y + (getmarkerpos "b" select 1) ) /2 ];
// On positionne le point C
"c" setmarkerpos [_x,_y];
// On positionne le rectangle au centre
"d" setmarkerpos _centre;
// On oriente correctement le rectangle
"d" setmarkerdir _angle1;
// On donne les bonnes dimensions au rectangle
"d" setmarkersize [_largeur/2, _longueur/2];
Les gens n'accordent guère d'importance à la vie, la preuve : quand ils la perdent, ils ne la réclament jamais.
[Jean Deluca]
[Jean Deluca]