2 votes

Algorithme pour l'intersection de chaînes polygonales 3D

J'ai deux chaînes polygonales en 3D et je veux savoir si elles s'intersectent ou non. Ce problème est connu sous le nom d'Intersection de Chaîne Polygonale. De bons algorithmes existent pour le cas en 2D, mais je n'en ai pas vu pour le cas en 3D

Quelqu'un peut-il m'aider avec ça ?

2voto

Futurologist Points 1309

D'accord, peut-être que cet algorithme est stupide, mais pourquoi ne pas choisir un plan (en position générale, ou l'un des plans de coordonnées), projeter orthogonalement les deux chaînes 3D sur le plan et résoudre le problème 2D en utilisant l'un de ces algorithmes efficaces, ce qui vous permettra de localiser tous les points d'intersection entre les projections et tous les paires de segments des deux chaînes 3D, dont les projections se croisent aux points d'intersection. Ensuite, à partir de chaque point d'intersection 2D, tracez la ligne passant par ce point, perpendiculaire au plan et vérifiez où cette ligne croise chacun des deux segments 3D, l'un de la première chaîne 3D, l'autre de la seconde, dont les projections se croisent au point d'intersection 2D. Si les points résultants sont différents, le point d'intersection projeté 2D n'est pas un vrai point d'intersection 3D. Sinon, vous obtenez un point d'intersection pour les chaînes 3D.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X