#1 Fri 06 January 2017 12:02
- Nosxo
- Participant actif
- Date d'inscription: 22 Sep 2016
- Messages: 50
Mapbasic direction distance coordonnée
Bonjour,
J'ai un petit problème car j'arrive à définir une direction par rapport à deux points (Point A et B) mais ensuite je veux que le point s'éloigne de 10 km tout en gardant la même direction.
Je veux définir les nouvelles coordonnées du point B par rapport à la nouvelle distance qui est de 10km !
Pouvez-vous m'aider svp ? je n'arrive pas à produire la formule sur Mapbasic?
A+
Dernière modification par Nosxo (Fri 06 January 2017 13:26)
Hors ligne
#2 Mon 09 January 2017 09:28
- ChristopheV
- Membre
- Lieu: Ajaccio
- Date d'inscription: 7 Sep 2005
- Messages: 3199
- Site web
Re: Mapbasic direction distance coordonnée
Bonjour,
Un petit cours de géométrie analytique pour se rappeler l'équation d'une droite à partir des coordonnées de deux points de la droite ?
Calcul du coefficient directeur ?
Calcul d'une distance ?
La question n'est pas MapBasic mais maths basiques.
Christophe
L'avantage d'être une île c'est d'être une terre topologiquement close
Hors ligne
#3 Tue 10 January 2017 09:35
- Nosxo
- Participant actif
- Date d'inscription: 22 Sep 2016
- Messages: 50
Re: Mapbasic direction distance coordonnée
Bonjour,
Je pense qu'il faut relire la question Chritophe V. Il s'agit bien d'une question sur des Maths et effectivement il s'agit bien là d'un petit problème de maths. Je n'ai jamais stipulé un problème de Mapbasic car j'ai bien réussi à déterminer la distance entre deux points A et B en fonction de leur coordonnées et j'ai aussi réussi à déterminer la direction (avec mapbasic et avec des les formules de maths).
Je pense qu'il s'agit d'utiliser la trigonométrie (Voir coordonnées cartésienne ou polaire) pour aller plus loin dans votre réponse.
Votre réponse ne m'aide pas trop mais je pense avoir trouvé une solution..
Petit rappel Georezo est un forum pour aider justement les geomaticiens en manque d'idée ou pour résoudre des problèmes simples ou compliqués.
Stipulé que la question est simple puis ne pas vraiment aider c'est juste pas l'esprit de Georezo !
il est évident que de donner la réponse est peut-être à votre gout trop simple et trop facile mais il est tout à fait possible de donner un exemple similaire et de l'expliquer à la personne. Là nous sommes plus dans une démarche pédagogique.
Donc mon problème est toujours le suivant :
En réalité j'ai 80 points dont le point A(X1,Y1) et le centre et les autres sont autours à différentes distances.
Pour mon calculs je préfère partir sur un exemple de deux points
J'ai déterminé la distance entre deux points A et B (Formule mathématique)
J'ai calculé la direction entre les point A et B (Formule mathématique -> trigo)
Maintenant je souhaite éloigner le point B (x2,y2) de 10 km( il devient B') du coup je cherche les nouvelles coordonnées de B'.
Est-il judicieux d'utiliser la formules suivante ( j'ai un doute)
x= r*cos(alpha)
Y= r*sin(alpha)
r= distance
cos(alpha) et sin(alpha) peuvent être déterminés par la trigo car nous avons connaissance des coordonnées du point B.
Je cherche plus une formule avec la distance et la direction car j'ai exactement ces données.
A+
Dernière modification par Nosxo (Tue 10 January 2017 10:03)
Hors ligne
#4 Tue 10 January 2017 10:08
- ChristopheV
- Membre
- Lieu: Ajaccio
- Date d'inscription: 7 Sep 2005
- Messages: 3199
- Site web
Re: Mapbasic direction distance coordonnée
Bonjour
Merci pour tous ces conseils ! C'est vrai que l'esprit GeoRezo je comprends pas trop, ça doit être les ravages du temps ...
Il y a tout ce qu'il faut pour résoudre le pb dans ma réponse. Il suffit de chercher un peu mais pour éclairer les consciences je condescend à formuler une réponse, désolé pas le temps de faire du LATEX.
Point A(xa,ya)
Point B (xb,yb)
Coeff directeur de la droite a (direction pour les nuls en maths) : (yb-ya)/(xb-xa) bon si on veut faire topographe et prendre le Nord comme angle zéro il suffit d'inverser.
Ensuite comme la droite passe par A on résous la petite équation
ya=axa+b pour trouver b
Ensuite le point C appartient à cette même droite et est situé à une distance de 10 km de A.
Calcul d'une distance entre deux points :
((xb-xa)^2+(yb-ya)^2)^-2
Le puissance -2 c'est pour racine carrée ...
Christophe
L'avantage d'être une île c'est d'être une terre topologiquement close
Hors ligne
#5 Tue 10 January 2017 14:10
- nicoboud
- Membre
- Lieu: Nantes
- Date d'inscription: 12 Oct 2007
- Messages: 860
Re: Mapbasic direction distance coordonnée
Bonjour,
Merci à Nosxo de rester courtois. A la décharge de ChristopheV, le titre du post mentionne "Mapbasic" alors que votre question n'est que mathématique...
D'autre part, on a parfopis sur ce forum des étudiants qui demandent à la communauté de résoudre leurs exercices à leur place... et ça ce n'est pas vraiment apprécié par la communauté georezo.
Ce post pourrait y ressembler d'où le type de réponse obtenu...
A bon entendeur !
Nicolas, modérateur du forum Mapinfo.
Co-modérateur du forum Mapinfo
Utilisateur Mapinfo et QGIS
Hors ligne
#6 Tue 10 January 2017 16:43
- Nosxo
- Participant actif
- Date d'inscription: 22 Sep 2016
- Messages: 50
Re: Mapbasic direction distance coordonnée
Bonjour,
Je pense que nous restons courtois
Le problème est mathématique mais il y a un lien avec Mapbasic. Vous-savez bien qu'il est possible sur Mapbasic d'avoir une commande qui traite une formule directement (exemple calculer une distance entre deux points). Donc pourquoi ne pas stipuler Mapbasic dans le post ?Je bosse mes formules sur Mapbasic ?
J'ai voulu simplifier ma question et mon problème pour justement ne pas faire trop compliquer et que cela reste simple à répondre rapidement.
Nous ne sommes pas tous des étudiants du coup parfois nous avons des trous de mémoires même pour quelque chose de simple que nous devons faire entre deux missions
Bon je vais pas revenir sur ce petit sujet mais restons sur la question de fond !
J'ai un doute sur la réponse de ChristopheV (Désolé ChristopheV) qui ne traite que la distance et le facteur... j'ai déjà les deux réponses pour la distance et le facteur du coup je ne comprend pas...
Moi je pense plus à la trigo
A (Xa,Ya)
B (Xb, Yb)
x= r*cos(alpha)
Y= r*sin(alpha)
Nous avons r après il faut calculer cos (alpha) et sin (alpha). Le point C est le point qui est constitué de (Xb,Ya).
ABC forme un triangle rectangle. donc après il faut calculer Cosinus et sinus mais cela ne marche pas pour tout du coup il faut l'adapter en fonction des situations.
Si X et Y >0 alors
Cos(alpha) = AC/ AB
Sin (alpha) = BC/AB
D
Si Xb < 0 et Yb > 0
Cos (alpha) = 180-(AC/AB )
Sin (alpha) = 180 - (BC/AB)
Si Xb<0 et Yb<0
Cos (alpha) = 180+(AC/AB )
Sin (alpha) = 180 + (BC/AB)
SI Xb >0 et Yb<0
Cos (alpha) = 360-(AC/AB )
Sin (alpha) = 360 - (BC/AB)
Voila nous avons réussi avec les points A,B et C maintenant j'éloigne B de 1000 m
x= r*cos(alpha)= 1000 *cos(alpha)
Y= r*sin(alpha) = 1000 *cos(alpha)
Je pense qu'il est possible d’améliorer cette solution non ?
a+
Dernière modification par Nosxo (Tue 10 January 2017 16:47)
Hors ligne
#7 Wed 11 January 2017 10:37
- ChristopheV
- Membre
- Lieu: Ajaccio
- Date d'inscription: 7 Sep 2005
- Messages: 3199
- Site web
Re: Mapbasic direction distance coordonnée
Bonjour,
Pour éviter des erreurs basiques si vous souhaitez travailler avec un angle la première des choses serait de préciser le référentiel. Ici on fait de la géomatique donc on utilise le système topographique avec le Nord comme zéro et le sens anti-trigonométrique pour l'orientation (c'est là que le mot prend son sens), ce qui change les formules énoncées plus haut les vôtres comme les miennes, les sinus deviennent des cosinus et lycée de Versailles.
Pour faire simple et être wikipedia compatible gardons le sens et le zéro habituel. C'est quoi le coefficient directeur dont je parle ? un petit croquis et l'on constate que c'est la tangente de votre angle alpha.
Si vous avez un point A(xa,ya) et un angle. Vous avez l'équation de la droite comme expliquer plus haut à partir de là le point B il est situé à 1000m de A ET il appartient à la demi-droite donc en vérifie l'équation que l'on vient de calculer.
Donc un système de deux équations pour trouver xb et [edit]yb[\edit]
(xb-xa)^2+(yb-ya)^2=1000^2
ET
yb=arctan(alpha)*xb+ b
Après je vous laisse les joies relatives à LA solution car en l'état il y en a 2 (voir 4 si on fait pas gaffe).
Dernière modification par ChristopheV (Wed 11 January 2017 14:03)
Christophe
L'avantage d'être une île c'est d'être une terre topologiquement close
Hors ligne