用gdal打开一个shp文件并读出里面点的坐标,并计算面积。

#include
#include<stdlib.h>
#include
#include
#include
#include"ogrsf_frmts.h"
using namespace std;
extern double getarea(OGRLinearRing *ring);
int main()
{
GDALAllRegister();
GDALDataset lauds;
lauds = (GDALDataset
)GDALOpenEx(“E:/Desktop/national fundamental information/LanduseData/LanduseData/Landuse.shp”, GDAL_OF_VECTOR||GDAL_OF_UPDATE, NULL, NULL, NULL);

if (lauds == NULL)
{
	cout << "open failed\n" << endl;
	exit(1);
}

OGRLayer *laulayer;
laulayer = lauds->GetLayerByName("Landuse");
//laulayer->DeleteField(5);

#if 0
OGRFieldDefn ofield(“area_sum”, OFTReal);
if (laulayer->CreateField(&ofield, TRUE) != OGRERR_NONE)
{
cout << “Creating Name field failed.\n” << endl;
}
#endif

OGRFeature *laufeature;
laulayer->ResetReading();
while ((laufeature=laulayer->GetNextFeature())!=NULL)
{
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值