Dato un numero qualsiasi di rettangoli di intersezione, disgiunti e toccanti, come trovare le polilinee (multiple) del profilo? I rettangoli sono definiti in coordinate pixel in modo da avere una precisione intera, ma possono essere migliaia di unità di grandi dimensioni.Aree rettangolari di unione (unione booleana) con precisione intera
Ho davvero bisogno coordinate numeriche per i contorni, fondendo regioni GDI non farà. So che posso semplificare il problema creando una regione GDI e chiamando GetRegionScans, ma ancora non risolverà il problema.
Questo fa parte dell'interfaccia utente in tempo reale, quindi l'algoritmo deve essere ragionevolmente veloce (non indovinerò mai più di una dozzina di scatole, forse un centinaio).
Lo sto facendo in C#, ma poiché questa è una domanda algoritmica, non mi interessa davvero il linguaggio. Qualche idea benvenuta.
Stai cercando le linee spesse nell'immagine? – SLaks
cosa significa: "migliaia di unità di grandi dimensioni"? si adattano ai normali numeri interi a 32 bit? –
vedi questo post: http://stackoverflow.com/questions/643995/algorithm-to-merge-adjacent-rectangles-into-polygon –