Coordonnées des points d'une flèche

Discussion générale entre passionnés et amateurs de mathématiques sur des sujets mathématiques variés
Iron
Messages: 5
Enregistré le: 05 Oct 2018, 20:50

Coordonnées des points d'une flèche

par Iron » 05 Oct 2018, 20:58

Salut,
je vous demande de l'aide car je dois réaliser une fonction python en utilisant matplotlib pour créer une flèche entre deux points donnés en paramètre dans des numpy.array et suivant la longueur des deux segments formant la pointe de la flèche et suivant une valeur d'angle donné en paramètre de la fonction, décrivant l'angle entre le segment principal et les deux segments de pointe de la flèche. Il faut que la fonction fonctionnent (sans mauvais jeu de mots ) peut importe l'orientation du segment principal et de la pointe (pas que si la flèche est horizontale ou verticale).
Merci à tous
Pour vous aider à visualiser la situation :
Image



Avatar de l’utilisateur
Ben314
Le Ben
Messages: 21709
Enregistré le: 11 Nov 2009, 21:53

Re: Coordonnées des points d'une flèche

par Ben314 » 05 Oct 2018, 21:41

Salut,
On considère que et .
Le vecteur a pour coordonnées et pour faire tourner ce vecteur d'un angle de , il faut multiplier (à gauche) par la matrice ce qui donne .
Ensuite, les coordonnées des points et s'obtiennent tout les deux en ajoutant aux coordonnées de un certain nombre de fois (*) les coordonnées de ce dernier vecteur.

(*) Le nombre en question dépendant de la longueur que tu veut pour tes deux petit traits. En particulier, ça va dépendre de savoir si tu veut qu'ils aient la même longueur quelque soit la longueur du segment (auquel cas il faudra avoir un coeff. constant divisé par la longueur de ) ou bien si tu préfère que ces deux petits traits aient une longueur proportionnelle à celle de (auquel cas, un coeff. constant suffit).
Modifié en dernier par Ben314 le 05 Oct 2018, 22:56, modifié 1 fois.
Qui n'entend qu'un son n'entend qu'une sonnerie. Signé : Sonfucius

Iron
Messages: 5
Enregistré le: 05 Oct 2018, 20:50

Re: Coordonnées des points d'une flèche

par Iron » 05 Oct 2018, 22:53

Merci pour ta réponse,
pour savoir, que représente xo et yo ? Je souhaites que la distance M2M3 soit fixe et soit égale à lg.
Par ailleurs, tu me demandes si je souhaites que la longueur des petits soit proportionnel à M2M3, donc à la longueur des petits traits ? J'ai un peu de mal à comprendre
Merci beaucoup pour ton aide

Avatar de l’utilisateur
Ben314
Le Ben
Messages: 21709
Enregistré le: 11 Nov 2009, 21:53

Re: Coordonnées des points d'une flèche

par Ben314 » 05 Oct 2018, 22:55

Je me suis gouré avec mes copiés collés sur les segment dans le post précédent : je rectifie.
Et xo, yo, ils représentent les coordonnées du vecteur obtenu en partant du vecteur M2M1 et en tournant de +- alpha.
Qui n'entend qu'un son n'entend qu'une sonnerie. Signé : Sonfucius

Iron
Messages: 5
Enregistré le: 05 Oct 2018, 20:50

Re: Coordonnées des points d'une flèche

par Iron » 05 Oct 2018, 23:11

D'accord merci, je prendrais le temps de bien regarder tout cela demain mais merci beaucoup

Iron
Messages: 5
Enregistré le: 05 Oct 2018, 20:50

Re: Coordonnées des points d'une flèche

par Iron » 06 Oct 2018, 08:18

Bonjour, j'ai eu le temps de bien regarder et effectivement cela est parfait. Il me manque plus qu'à déterminer le coefficient à appliquer à xo et yo pour avoir la bonne longueur. Je souhaite que cette longueur soit égale à une valeur déterminée nommée lg et indépendante de M1M2. Il faut donc faire (xo,yo) / (lg/M1M2) ?
Merci pour ton aide

Avatar de l’utilisateur
Ben314
Le Ben
Messages: 21709
Enregistré le: 11 Nov 2009, 21:53

Re: Coordonnées des points d'une flèche

par Ben314 » 06 Oct 2018, 12:20

Oui : si tu calcule , et que tu multiplie les coordonnées de par avant de les ajouter à celles de M2 tu obtient un vecteur qui aura systématiquement une de longueur K (*).
A toi de voir quelle valeur tu veut prendre pour K.

(*) Avec comme unité la même que celle dans lesquelles tu as tes coordonnées: sans doute le "pixel" ou le "centimètre" : j'ai jamais utilisé l'interface graphique de Python.
Qui n'entend qu'un son n'entend qu'une sonnerie. Signé : Sonfucius

Iron
Messages: 5
Enregistré le: 05 Oct 2018, 20:50

Re: Coordonnées des points d'une flèche

par Iron » 06 Oct 2018, 22:43

Encore merci infiniment pour ton aide

pascal16
Membre Légendaire
Messages: 6663
Enregistré le: 01 Mar 2017, 12:58
Localisation: Angoulème : Ville de la BD et du FFA. gare TGV

Re: Coordonnées des points d'une flèche

par pascal16 » 07 Oct 2018, 08:51

On peut faire d'un manière totalement différente.

on part d'un flèche de longueur 1 et dont les extrémités sont (0;0) et (1;0)
on connait les coordonnées des 4 points.

pour tous les points :
On fait une rotation d'angle <i,OM1OM2>
On fait une homothétie de valeur ||M1M2||
On fait un translation de vecteur OM1
Matriciellement, on obtient pour les deux premières lignes une seule matrice plus un vecteur pour la troisième.
On retombe sur ce qui est proposé par Ben

Ca permet de minimiser les calculs manuels et de laisser aux classes (supposées sans défaut) les calculs compliqués.
Ca permet aussi d'appliquer la transformation à tout ce qu'on veut, en C# (donc VB,C++,C#,Java...) on peut utiliser des telles matrices pour des objets graphiques (bitmap ou vectoriels).

 

Retourner vers ⚜ Salon Mathématique

Qui est en ligne

Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 4 invités

Tu pars déja ?



Fais toi aider gratuitement sur Maths-forum !

Créé un compte en 1 minute et pose ta question dans le forum ;-)
Inscription gratuite

Identification

Pas encore inscrit ?

Ou identifiez-vous :

Inscription gratuite