-
GDALRaster
的构造函数接受两个参数。第一个参数定义光栅源,第二个参数定义是否应在写入模式下打开光栅。对于新创建的栅格,将忽略第二个参数,并且始终以写入模式创建新栅格。第一个参数可以采用三种形式:表示文件路径(文件系统或 GDAL 虚拟文件系统)的字符串、具有定义新栅格的值的字典或表示栅格文件的字节对象。
如果输入是文件路径,则从那里打开栅格。如果输入是字典中的原始数据,则需要参数
width
、height
和srid
。如果输入是字节对象,它将使用 GDAL 虚拟文件系统打开。有关如何使用字典输入创建栅格的详细说明,请参阅从数据创建栅格。有关如何在虚拟文件系统中创建栅格的详细说明,请参阅使用 GDAL 的虚拟文件系统。
以下示例显示了如何从不同的输入源创建栅格(使用来自 GeoDjango 测试的示例数据;另请参阅示例数据部分)。
>>> from django.contrib.gis.gdal import GDALRaster >>> rst = GDALRaster('/path/to/your/raster.tif', write=False) >>> rst.name '/path/to/your/raster.tif' >>> rst.width, rst.height # This file has 163 x 174 pixels (163, 174) >>> rst = GDALRaster({ # Creates an in-memory raster ... 'srid': 4326, ... 'width': 4, ... 'height': 4, ... 'datatype': 1, ... 'bands': [{ ... 'data': (2, 3), ... 'offset': (1, 1), ... 'size': (2, 2), ... 'shape': (2, 1), ... 'nodata_value': 5, ... }] ... }) >>> rst.srs.srid 4326 >>> rst.width, rst.height (4, 4) >>> rst.bands[0].data() array([[5, 5, 5, 5], [5, 2, 3, 5], [5, 2, 3, 5], [5, 5, 5, 5]], dtype=uint8) >>> rst_file = open('/path/to/your/raster.tif', 'rb') >>> rst_bytes = rst_file.read() >>> rst = GDALRaster(rst_bytes) >>> rst.is_vsi_based True >>> rst.name # Stored in a random path in the vsimem filesystem. '/vsimem/da300bdb-129d-49a8-b336-e410a9428dad'
在 Django 4.0 中更改:允许在任何 GDAL 虚拟文件系统中创建栅格。
本文介绍 django.contrib.gis.gdal.GDALRaster
的用法。
声明
class GDALRaster(ds_input, write=False)
相关用法
- Python Django GDALRaster.skew用法及代码示例
- Python Django GDALRaster.transform用法及代码示例
- Python Django GDALRaster.srid用法及代码示例
- Python Django GDALRaster.bands用法及代码示例
- Python Django GDALRaster.scale用法及代码示例
- Python Django GDALRaster.extent用法及代码示例
- Python Django GDALRaster.driver用法及代码示例
- Python Django GDALRaster.warp用法及代码示例
- Python Django GDALRaster.origin用法及代码示例
- Python Django GDALRaster.metadata用法及代码示例
- Python Django GDALRaster.srs用法及代码示例
- Python Django GDALRaster.width用法及代码示例
- Python Django GDALRaster.name用法及代码示例
- Python Django GDALRaster.geotransform用法及代码示例
- Python Django GDALRaster.height用法及代码示例
- Python Django GDALBand.data用法及代码示例
- Python Django GeometryCollection用法及代码示例
- Python Django GEOSGeometry.srid用法及代码示例
- Python Django GEOSGeometry.normalize用法及代码示例
- Python Django GenericRelation用法及代码示例
- Python Django Greatest用法及代码示例
- Python Django GEOSGeometry.geom_type用法及代码示例
- Python PIL GaussianBlur()用法及代码示例
- Python Django Group.permissions用法及代码示例
- Python Tableau GroupItem用法及代码示例
注:本文由纯净天空筛选整理自djangoproject.com大神的英文原创作品 django.contrib.gis.gdal.GDALRaster。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。