2017-04-24 2 views
0

J'ai 4 points. Si je devais dessiner des lignes de chaque point à tous les autres points, j'obtiendrais 4 lignes extérieures et 2 lignes qui se croisent au milieu. Ce que j'essaie d'identifier, c'est le point d'intersection des deux lignes de croisement. Tout ce que je sais, ce sont les coordonnées de chacun des 4 points (x0, y0, x1, y1, x2, y2, x3, y3).Point d'intersection entre 4 points

demonstration pic

Y at-il une solution simple à ce que je suis absent?

Édition: Edition: correction. Il me manquait les deux formules: x = x1 + ua (x2 - x1) et y = y1 + ua (y2 - y1).

+1

Notez qu'il existe également le cas où un point se trouve à l'intérieur du triangle formé par les trois autres points; alors aucun des segments ne se croisent. – coproc

Répondre

1

Il n'y a rien de spécial à l'intersection des diagonales quadrilatérales. Utilisez simplement n'importe quelle approche pour l'intersection de deux segments de ligne. Wiki

+0

N'y a-t-il pas un moyen plus simple? Quelque chose à propos de la relation entre 4 points dans l'espace? Il y a certaines hypothèses que je peux faire, par exemple, je sais que le point de croisement est dans les 4 points, et non à l'extérieur. Je peux également supposer que le point de croisement est plus proche de celui des 4 points les plus proches les uns des autres. Ou est le moyen le plus simple de supposer des lignes infinies et d'utiliser la formule d'intersection comme vous le suggérez? –

+0

Non, malheureusement. La connaissance que le point de croisement est à l'intérieur permet d'omettre de vérifier si les segments se croisent réellement, mais le calcul de la position reste le même (sauf pour des cas spéciaux comme le parallélogramme). – MBo