Quel que soit le sens de la ligne : verticale, horizontale, diagonale (plus ou moins penchée), je cherche à savoir si le point que je clique se trouve à moins d'une distance x de la ligne. Cette distance doit être celle de la perpendiculaire à la ligne passant par le point cliqué.
J'ai essayé quelques trucs mais je n'y suis pas arrivée pour le moment, je voudrais savoir si quelqu'un a une idée ?
Merci
salut,
Si tu connais l'equation de la droite et les coordonnées de ton point tu peux calculer la distance entre ton point et cette droite.
Ensuite tu vois si cette distance est inférieur ou pas a ta distance limite.
A+
Voila:
soit H(x,y) ton point.
et y=ax+b ta droite alors
la distance entre H et la droite est:
d=|y-ax-b|/rac(1+a²)
sauf erreur
A+
bonjour Mystere ,
La distance entre un point , n(x',y'),et une droite
d'equation: ax+by+c=0 est donnée par la formule suivante:
d=valeur absolue(ax'+by'+c')/racine carrée(a^2+b^2+c^2)
d: c'est ,bien entendu,la distance.
pareille pour les espaces 3d.
pardon,j'ai fait une erreur de frappe;
en fait c'est rac(a^2+b^2).
je m'excuse;
Merci beaucoup pour ces réponses, c'est exactement ce qu'il me fallait !
En fait j'étais aller chercher très loin ! j'essayais de trouver le point appartenant à ma ligne de manière à ce que le segment pointCLiqué, pointTrouvé soit perpendiculaire à celle-ci avec des produits scalaires... puis je me suis souvenue que pour deux droites perpendiculaires on a aa'=-1 (ça n'a pas marché non plus...) mais là c'est bon
Je ne connaissais pas cette formule quelqu'un pourrait me l'expliquer ?
Merci !
Par contre dans le cas d'une droite parrallèle à l'axe des ordonnées le calcul ne marche plus. Aucun problème dans ce cas il suffit juste de faire
|Xpointcliqué-Xdroite|
Un vecteur directeur de la droite ax+by+c=0 est u(-b,a)
donc si H(X,Y) est ton point.
et M(xm,ym) le point dela droite le plus proche de ton point
les vecteurs u (placé en M) et MH doit etre perpendiculaires:
(xm-b,ym+a).(X-xm,Y-ym)=0
avec axm+bym+c=0
tu as un systeme en xm et ym que tu resout donc tu sais ou est
ton point M(xm,ym)
ensuite la distance vaut HM=rac((X-xm)²+(Y-ym)²)
il y a des valeurs absolues quand on reduit les carrés...
et la formule est toujours valable (sauf si a=b=0 mais bon)
A+
Vous devez être membre accéder à ce service...
Pas encore inscrit ?
1 compte par personne, multi-compte interdit !
Ou identifiez-vous :