Inscription / Connexion Nouveau Sujet
Niveau autre
Partager :

Trouvé si une coordonnée X,Y se trouve à l int. d une forme géo.

Posté par SweetFO2 (invité) 23-06-04 à 14:53

Salut à tous,

je ne suis pas du lycée, en fait je ne crois pas être du même pays que
vous... mais bon, je cherche présentement une solution à un petit
problème mathémathique et je me suis dit que peut-être l'un
d'entre vous pourrait m'aider.  

En effet, je voudrais savoir quels formules appliquer pour pouvoir trouver
si une coordonnée (X;Y) (11;18 par exemple..) se retrouve à l'intérieur
du périmètre d'une forme géographique quelquonque, et dont les
coordonnées de chaque coins sont connu (par exemple : un rectangle
ABCD dont A=2;7 - B=14;7 - C=14;3 - D=2;3).  

C'est très facile de connaître la réponse si on dessine la forme et le
point recherché, ...mais comment prouver à l'aide de formules
si OUI ou NON ce point se retrouve à l'intérieur de la forme.

Votre aide serait grandement apprécié!
Merci!

FO

Posté par
Victor
re : Trouvé si une coordonnée X,Y se trouve à l int. d une forme 23-06-04 à 15:53

Bonjour SweetFO2,

je ne connais pas de formule répondant à ton problème mais je peux te
donner une idée.
En fait, si ta forme est polygonale (constituée de segment), on peut
la traduire par un système d'inéquations. Il y aura autant d'inéquations
que de sommet du polygone de départ (dans ton exemple, on aura donc
4 inéquations).
On peut, pour obtenir ce système, déterminer les équations de droites
correspondant à chacun des côtés.
Un point appartient à ce polygone si et seulement si ses coordonnées
vérifient toutes les inéquations.
Pour reprendre ton exemple, le rectangle peut se traduire par le système
:
x 14
x 2
y 7
y 3

Propose un autre exemple si tu ne comprends pas la méthode.

@+

Posté par
J-P Posteur d'énigmes
re : Trouvé si une coordonnée X,Y se trouve à l int. d une forme 23-06-04 à 17:25

Attention quant même si le polygone n'est pas convexe.

Je lance une autre proposition, mais je ne l'ai pas vraiment analysée.

On considère le segment de droite liant le point à un point quelconque
mais que l'on sait être intérieur du polygone.

On s'arrange pour que ce segment de droite ne passe pas par un
des sommets du polygone et on compte le nombre de cotés du polygone
qui sont coupés par le segment de droite.

Si le nombre est impair, le point est à l'extérieur du polygone,
si le nombre est pair (o est aussi pair), le point est à l'intérieur
du polygone.

Il reste à mettre cela en équation   et vérifier si je ne me suis
pas planté.  

Remarque:
On peut aussi choisir l'algorithme qui fait relier le point à un
point que l'on sait extérieur au polygone.
Mais alors, il faut croiser les mots "pair" et "impair" dans la suite.

A vérifier si je n'ai pas raconté trop de bêtises.  

Posté par
Victor
re : Trouvé si une coordonnée X,Y se trouve à l int. d une forme 23-06-04 à 17:43

Bonjour J-P,

Tu as tout à fait raison de bien préciser que le polygone doit être
convexe
Ta méthode me semble juste mais difficile à mettre en pratique.

Comment trouver un point à l'intérieur du polygone ? En plus il doit
vérifier (comme tu l'as écrit) le fait que le segment joignant
le point à ce point intérieur ne doit pas passer par un sommet.
Tout cela me semble difficile à réaliser ...

@+

Posté par SweetFO2 (invité)re : 23-06-04 à 18:09

Salut Victor & J-P,

c'est très intéressant les réponses que vous avez donnés  mais encore là,
comme vous dites, ça deviens un peu plus complexe de mettre cela
en pratique.  Et pour répondre à la question, le polygone pourrait
être convexe ou non-convexe; l'idéal serait de trouver une façon
qui fonctionnerait aussi bien pour les 2.  

Je vais continuer à réfléchir là-dessus mais au moins maintenant je
pars sur une bonne base et c'est un bon début.  Par contre,
comme vous dites, il faudrait trouver une façon de valider si le
segment passe par un sommet.  Bref, je vous tiens au courant de mes
démarches.

Merci encore!

@+

Posté par
J-P Posteur d'énigmes
re : Trouvé si une coordonnée X,Y se trouve à l int. d une forme 23-06-04 à 19:21

Dans le principe, la proposition que j'ai faite est longue mais
pas très compliquée.

Il vaut mieux utiliser la méthode préconisée dans la remarque, car il
est plus facile de choisir un point hors du polygone.
En effet il suffit de prendre un point dont l'abscisse est plus
grande (petite) que toute les abscisses de tous les sommets du polygone
et de prendre n'importe quoi comme ordonnée.

A partir de là, on écrit l'équation de la droite passant par le
point choisi en dehors du polygone et le point qu'on veut localiser.
Soit Delta cette droite.

On peut vérifier facilement si la droite delta ne passe pas par les
sommets du polygone (en regardant si les coordonnées des sommets
vérifient les équation de la droite).

On peut écrire les équations des droites supportant les cotés du polygone.

On peut calculer les points d'intersection de ces droites supportant
les cotés avec Delta et vérifier si ces points sont sur les segments
de droites cotés du polygone.

C'est facile mais long à faire à la main, par contre, si le but est de
vérifier par exemple si le curseur d'une souris se trouve dans
un polygone dessiné sur l'écran de l'ordi, il ne devrait
pas être trop difficile d'écrire le petit programme faisant
cela automatiquement.





Posté par Manu (invité)Trouvé si une coordonnée X,Y se trouve à l int. d une forme 02-07-04 à 17:30

Bonjour,
Le principe n'est pas compliqué, avec un polygone convexe. Dans
le cas d'un polygone croisé, le probleme revient à 2 polygones
convexes. Dans le cas d'un polygone concave, on peut ruser en
comptant le nombre de cotés coupés. Nombre pair signifie dedans,
impaire dehors...

Soit P le point à situer par rapport au polygone A.
Le principe:
Choisir un point M, connu à l'interieur du polygone, chercher si le
segment MP ne coupe aucun cote du polygone. c'est à dire qu'il
se trouve du meme cote par rapport à chaque coté du polygone.
Pour connaitre comment determiner la position (coté) d'un point par
rapport à un segment voir:
http://www.kaddour.com/annexea/annexea.htm

Posté par Manu (invité)Trouvé si une coordonnée X,Y se trouve à l int. d une forme 02-07-04 à 18:05

Re bonjour,
Dans le cas d'un polygone convexe, il suffit de tester le position
du point par rapport à chaque cotés du polygone en les prenant dans
l'ordre. Si le coté du point est le meme pour tous les cotés
du polygone alors il est à l'interieur.
C'est plus simple...est suffisant dans le cas de polygone convexe.



Vous devez être membre accéder à ce service...

Pas encore inscrit ?

1 compte par personne, multi-compte interdit !

Ou identifiez-vous :


Rester sur la page

Inscription gratuite

Fiches en rapport

parmi 1675 fiches de maths

Désolé, votre version d'Internet Explorer est plus que périmée ! Merci de le mettre à jour ou de télécharger Firefox ou Google Chrome pour utiliser le site. Votre ordinateur vous remerciera !