No es específicamente rectángulos + triángulos rectos, pero un buen punto de investigación para buscar polígonos de teselación es Voronoi Diagrams and Delaunay Triangulations y here y here.
De hecho, si los "triángulos correctos" son lo suficientemente buenos, se garantiza que triangularán para usted, y siempre puede dividir cualquier triángulo en dos triángulos rectos, si realmente los necesita. O puede cortar "puntas" de triángulos para hacer más triángulos rectángulos y algunos rectángulos fuera de los triángulos derechos.
También puede probar ear-clipping, ya sea barriendo radialmente, si sabe que tiene polígonos bastante regulares, o "recortando el trozo convexo más grande". Luego, divide cada triángulo restante en dos para crear triángulos rectos.
polygon http://static.eruciform.com/images/polygon.png
Se podría tratar de hacer menos se rompe mediante el barrido de un lado y luego al otro para hacer un trapecio, que se dividió de manera diferente, pero luego tiene que hacer una comprobación para asegurarse de que su barrido de línea hasn ha cruzado otra línea en algún lugar. Siempre puedes recortar las orejas, incluso con algo prácticamente fractal.
Sin embargo, esto a veces crea triángulos muy delgados. Puede realizar heurísticas, como "tomar el más grande", en lugar de cortar continuamente a lo largo del borde, pero eso lleva más tiempo, acercándose a O (n^2). Delaunay/Vornoi lo hará más rápido en la mayoría de los casos, con triángulos menos delgados.
es esto para una clase o de una clase de algoritmos gráficos por ordenador? – eruciform
No es para una clase. No estoy en la escuela – Steve
De hecho, podría estar dispuesto a darle una oferta de trabajo a alguien que pueda responder bien a la pregunta si puede programar para iPhone, Mac y .net. ;) – Steve