Estoy trabajando en una aplicación, necesito poder combinar dos formas superpuestas arbitrarias tal como las dibujó el usuario. Esta sería una operación de la Unión en las dos formas. La forma resultante sería la silueta de las dos formas superpuestas.Calcular unión de dos formas arbitrarias
Las formas se almacenan como una secuencia de puntos en el sentido de las agujas del reloj.
Idealmente me gustaría un algoritmo que tendrá dos matrices de puntos (x, y) y devolver una única matriz de la forma resultante.
He estado leyendo Wikipedia en Boolean operations on polygons que menciona el Sweep line algorithm pero no puedo establecer el vínculo entre esto y mi objetivo, por desgracia, no soy matemático.
estoy desarrollando la aplicación en ActionScript 3, pero estoy familiarizado con C#, Java y puedo elegir mi camino a través de C y C++.
Gracias, estoy poniendo en práctica en AS3, pero familiarizado con C#, Java –
Ah ... bueno, no estoy seguro si el código fuente de CGAL es tan divertido de separar y portuar, ya que expresa sus algoritmos de una manera bastante genérica, modelado según el STL (IIRC, ha pasado un tiempo). Tal vez sea mejor que transfiera una de las bibliotecas más específicas vinculadas al pie de la página de Wikipedia. Alternativamente, ¿puede salirse con la simple representación de ambos polígonos en un mapa de bits y luego realizar las operaciones booleanas en eso? –
Encontré este puerto (parcial) AS3 del puerto Java de GPC http://code.google.com/p/gpcas/ que admite operaciones de UNIÓN. Gracias por tu contribución. –