
How do I convert a set of polygons into a bitmap如何获取一组包含任意值的多边形,并创建一个对应的位图,其中每个像素都包含该位置处的多边形的值? 为了将问题放到上下文中,我的多边形包含有关多边形中每平方公里平均人数的信息。 我需要创建一个栅格/位图,其中包含代表200米仓中人口的像素。 过去我做过类似的事情,我使用多边形来创建蒙版,方法是将其绘制为位图并填充值,然后将位图转换为可操纵的数组。 我敢肯定有更好的方法可以做到这一点! 我根据要求进一步澄清了这个问题。 谢谢 缺口 这是一个有趣的项目。这是我要做的,假设多边形是凸的:
这比听起来要棘手得多,因为您需要精通纪律才能将栅格坐标视为不是要标记的像素,而是像素之间的不可见线。否则,您会因边界问题而感到困惑。 对此的一个很好的测试是,如果您有一个面积为零的多边形,例如它由从点A到点B再回到点A的边缘组成,则它不应点亮任何像素。另一个测试是如果您的平行四边形的高度为2个单位,并且其上边缘和下边缘为2个单位宽,则它应恰好照亮4个像素。 如果多边形不是凸的,则有些不同。无论边缘与栅格线的交叉之处如何,都将所有像素从那里切换到任意选择的X坐标,例如"屏幕"的左边缘。完成所有边缘后,仅内部像素将被切换奇数次。 这可能不是您所需要的,但是如果您要绘制多边形(或以多边形为基础读取多边形图像的像素),则一种解决方案是滚动自己的多边形填充工具。坦率地说,这是很多乐趣,而且真的很容易学习。 但是你的问题对我来说不是很清楚。你能给个更好的描述吗?
-亚当 您正在使用什么GIS软件? ArcGIS在ArcGIS 9.2或更高版本中提供了"多边形到栅格"工具,该工具可编写为PolygonToRaster_conversion函数。
@尼克R
gdal_rasterize确实不满足您的要求吗? ImageMagick可以从svg转换为png,也许您可??以看一下代码,或者干脆创建svg并使用IM进行转换?地做到这一点。 |