ile dikdörtgen bölgeler, nasıl (çoklu) anahat çoklu çizgi bulunur? Dikdörtgenler piksel koordinatlarında tanımlanmıştır, böylece tamsayı doğruluğu vardır, ancak bunlar binlerce büyük olabilir.Birleştirme (Boolean Birliği) kesişme, ayrık ve dokunaklı dikdörtgenler herhangi bir sayı göz önüne alındığında tamsayı doğruluk
Gerçekten yapmayacağım GDI bölgeleri birleştirme, ana hatları için sayısal koordinatları gerekir. Bir GDI bölgesi oluşturarak ve GetRegionScans'ı arayarak sorunu basitleştirebileceğimi biliyorum, ancak yine de sorunu çözmeyecek.
Bu gerçek zamanlı UI parçasıdır, bu nedenle algoritma (belki bir düzine kadar kutuları, yüz asla fazla tahmin ediyorum) oldukça hızlı olması gerekiyor.
C# bunu, ama bu yok algoritmik bir sorudur beri gerçekten dil umurumda ediyorum. Herhangi bir fikir en hoş geldiniz. Bu performans gereksinimlerini karşılayan eğer
Sen görüntüde kalın çizgilerle arıyoruz? – SLaks
ne anlama gelir: "binlerce birim büyük"? düzenli 32 bit tam sayılara sığar mı? –
Bu yayını bakın: http://stackoverflow.com/questions/643995/algorithm-to-merge-adjacent-rectangles-into-polygon –