[JAVA] Causes des erreurs répétées des données d'entrée singulières dans Hull Voronoi 3D

À propos de Hull Voronoi 3D

Un programme qui calcule un diagramme de Voronoi 3D, l'original est écrit en C #. Il existe également une version de traitement (Java) que j'ai créée. J'obtiens fréquemment une erreur de données d'entrée singulière dans findInitialPoints of Convex Hull, alors j'ai enquêté sur la cause. https://github.com/Scrawk/Hull-Delaunay-Voronoi https://github.com/Nekodigi/Hull-Voronoi-3D

Cause

En premier lieu, une erreur de données d'entrée singulière se produit lorsque les points d'entrée correspondent. Dans findInitialPoints, les coordonnées de chaque axe sont réduites aux points des valeurs minimale et maximale et transmises, mais si les valeurs minimale et maximale de plusieurs axes sont également utilisées, les points sont rarement insuffisants et les mêmes points sont sélectionnés. Il y aura une situation où vous serez perdu.

Solution

S'il y a peu de points, une erreur de données d'entrée singulière est susceptible de se produire, mais le traitement est plus léger, donc il est résolu en passant tous les points à findInitialPoints.

Recommended Posts

Causes des erreurs répétées des données d'entrée singulières dans Hull Voronoi 3D
Dessinez les données de chemin SVG (attribut d de l'élément de chemin) avec Java + Apache Batik