Packing an irregular polygon with different sized circles

懵懂的女人 提交于 2019-12-10 16:17:04

问题


I'm trying to write a program in Python with Shapely that takes in shape files (right now congressional districts) and "packs" them with circles. The end goal is to have the center points and radii of the circles. I'd like to cover the maximum area with the least amount of circles.

All of the resources I've found via Google so far are about circle packing within standard geometric objects like squares/circles/triangles etc... So my instinct is to try and turn these shapes into triangles or something and then apply some existing algorithm to the simpler shapes.

Does this seem like the right path for problem solving if the shapes have lots of small concave edges? Or is there some algorithm I haven't been able to find via Google that anyone knows of that does this already?


回答1:


You might start with this seminal paper, and then move backward & forward in time using Google Scholar:

Bern, Marshall, and David Eppstein. "Quadrilateral meshing by circle packing." International Journal of Computational Geometry & Applications 10.04 (2000): 347-360.


         
          Part of Fig.1

In particular, much of the paper is on packing polygons with circles to achieve specific properties, e.g.,


         


来源:https://stackoverflow.com/questions/47860687/packing-an-irregular-polygon-with-different-sized-circles

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!