矢量数据怎么转成栅格数据,矢量栅格数据转换
作者:小心洋葱
Gdal库提供了一个矢量栅格化接口函数,GDALRasterizeLayers。今天我们来学习一下这个接口函数的用法。该函数的原型如下:
CPLErr GDALRasterizeLayers(GDALDatasetH hDS,
int nBandCount,
int * panBandList,
国际律师协会,
OGRLayerH * pahLayers,
GDALTransformerFunc pfnTransformer,
void * pTransformArg,
double * padfLayerBurnValues,
char ** papszOptions,
GDALProgressFunc pfnProgress,
void * pProgressArg
)
下面解释了该接口的参数:
hDS ——输出的栅格数据。请注意,数据必须在更新模式下打开。
用于更新栅格数据的波段数
波段列表——要更新的波段列表
NLayerCount ——矢量图层数,对应参数矢量图图层数组pahLayers的元素个数。
Pahlayers3354矢量图形层阵列
PfnTransformer ——将几何图形转换为光栅图像的像素/行的转换器。如果此参数为空,将在内部创建一个。
Ptransformarg3354转换器使用的参数,用于将几何图形转换为光栅图像的像素/行
PadfLayerBurnValues——指定每个输出波段的输出像素值,因此它必须是nBandCount。
PapszOptions ——控制栅格化的一系列选项值,栅格化是最复杂的参数,包括以下选项:
属性:
指定属性字段中的字段值将作为栅格值写入栅格文件,这些值将输出到所有输出波段。如果指定了此值,padfLayerBurnValues参数的值将无效,并且padfLayerBurnValues参数可以设置为NULL。
CHUNKYSIZE :
指定运行操作的块的高度。值越大,计算时间越短。如果这个值没有设置或者设置为0,则GDAL的缓存大小按照公式:缓存占用的字节数/扫描函数的字节数得到。该值不会超过缓存的大小。
ALL_TOUCHED :
设置为TRUE表示所有像素都接触矢量线或多边形(全部参与矢量化?),否则只是多边形的中心或者brezenhams线算法选择的部分(注:brezenhams线算法是著名的矢量光栅化算法)。默认值为FALSE。这个选项我暂时不理解。如果你知道,请留言告诉我。
“刻录值来源”:
Gdal的函数说明这个参数是用来设置几何体的Z值,也就是高程值。我不明白设置这个值如何影响栅格化。
MERGE_ALG :
覆盖栅格数据或向栅格数据添加新值。选择替换以覆盖,选择添加以向现有栅格数据添加新值。默认值为REPLACE。
pfprogress3354gdal的进度功能
ProgressArg ——传递给progress函数的参数值
返回值:
CE_None表示处理成功,CE_Failure表示发生了错误。
值得注意的是,gdal的命令行程序gdal _ raster也可以实现矢量栅格化,但是这个程序并没有直接调用gdal_rasterize layers函数。有兴趣的朋友可以看看gdal _ raster的实现。计划将来提供一个GDALRasterizeLayers的使用示例程序。
参考资料:
PIE SDK矢量光栅化算法
1.算法功能介绍:矢量栅格化。将矢量数据转换为栅格数据通常很方便。对于点目标和线目标,由它们所在的栅格行数和列数表示。对于区域目标,有必要确定落在该区域内的像素。通常,光栅(像素)的尺寸大于原始坐标所指示的分辨率。
GDAL读写向量文件——Python
在Python中使用OGR时,必须先导入OGR库,如果需要中文支持,还需要导入GDAL库。具体代码如下。Python创建的shp结果如图1所示。图1 Python创建了矢量结果#-*- codin.
Cnum调用GDAL算法的进度信息的传递
GDAL库提供了很多算法和进度条的参数。对于C调用,应该没有问题,但是对于C#调用,需要在进度条写一个代理来交付。首先,编写一个简单的测试代码。首先,定义一个委托函数。
基于GDAL的图像几何校正
1.概述将遥感图像与地理坐标相关联的方法有多种。一种方式是直接给出仿射变换系数,即六个参数,左上角的地理坐标,纵横两个方向的分辨率,旋转系数。在这种情况下,很容易得到一个像素的地理坐标。
osgEarth基础入门
ose earth基金会简介2015年3月21日16:19 osgEarth是基于三维引擎osg开发的三维数字地球引擎库。基于osg实现了瓦片调度插件、可选的四叉树调度插件以及更多的地理数据加载插件。
奥斯吉思基金会介绍(重印)
ose earth基础入门ose earth是基于三维引擎osg开发的三维数字地球引擎库。基于osg,瓦片调度插件,可选四叉树调度插件和更多地理数据加载插件(包括GDAL,ogr,WMS,T.
Mapcontrol遍历所有图层方法
Mapcontrol遍历所有图层方法2011-04-29 19:51 IMap中的get_layers()可以遍历MapControl中的当前图层。该方法可以通过指定UID来过滤或划分层.
webkit模块介绍
1.Webkit模块中用到的第三方库如下:cairo是casqt Unicode处理的2D绘图库,expat是从qt中提取部分代码形成的,Freeness是XML SAX解析器的库。
瓷砖切割工具gdal2tilesperiodPy重写为纯cplusplus版本
Gdal2tiles.py是用于在Gdal库中生成TMS切片的python代码。它支持两种瓦片:谷歌墨卡托EPSG:3857和经纬度EPSG:4326,并输出png格式的图像。gdal2tiles.pymo。
随机推荐
Red Hat Enterprise Linux的版本和发布日期
Red Hat Enterprise Linux 7发布/更新正式上市日期Red Hat发布勘误表日期* Kern.
定期解析PHP以提取或替换img标签属性
?Php /*PHP定期提取图片的img标签中的任何属性*/$str=