您好,登錄后才能下訂單哦!
廢話不多說,我就直接上代碼讓大家看看吧!
#!/usr/bin/env python # -*- coding: utf-8 -*- # @File : copyShapefile.py # @Author: huifer # @Date : 2018-4-28 from os.path import exists import gdal from osgeo import ogr from os import remove gdal.SetConfigOption("GDAL_FILENAME_IS_UTF8", "YES") # 路徑中文 gdal.SetConfigOption("SHAPE_ENCODING", "GBK") # 屬性中文 in_shapefile = "dataSample/wang_point.shp"# 數據模板 out_shapefile = "shapefileAa.shp" # 輸出數據集 in_ds = ogr.Open(in_shapefile) # 讀取模板數據 in_lyr = in_ds.GetLayerByIndex(0) if exists(out_shapefile): remove(out_shapefile) drv = ogr.GetDriverByName("ESRI Shapefile") # 指定數據驅動 out_ds = drv.CreateDataSource(out_shapefile) # 創建數據源 proj = in_lyr.GetSpatialRef() # 獲取模板坐標系 out_lyr = out_ds.CreateLayer(out_shapefile.split(".")[0], proj, ogr.wkbPoint) # copy the schema of the original shapefile to the destination shapefile lyr_def = in_lyr.GetLayerDefn() for i in range(lyr_def.GetFieldCount()): # 獲取字段長度 out_lyr.CreateField(lyr_def.GetFieldDefn(i)) # 創建字段 feature = ogr.Feature(lyr_def) wkt = "POINT(88615.730000 75345.486000)" point = ogr.CreateGeometryFromWkt(wkt) feature.SetGeometry(point) # 添加點 out_lyr.CreateFeature(feature) # 關閉 特征 feature = None # 關閉數據 data_source = None
以上這篇Python 根據數據模板創建shapefile的實現就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持億速云。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。