gdal求矢量图形的形心
gdal求矢量图形的形心
#include "gdal_priv.h"
#include "ogrsf_frmts.h"int main() {OGRRegisterAll();OGRPolygon* square_1 = new OGRPolygon();OGRLinearRing* ring_1 = new OGRLinearRing();// 添加 square_1 的点ring_1->addPoint(0, 0);ring_1->addPoint(3, 2);ring_1->addPoint(4, 5);ring_1->addPoint(1, 6);ring_1->addPoint(0, 0); // 添加起始点以形成闭环square_1->addRingDirectly(ring_1);OGRPolygon* square_2 = new OGRPolygon();OGRLinearRing* ring_2 = new OGRLinearRing();// 添加 square_2 的点ring_2->addPoint(3, 0);ring_2->addPoint(7, 1);ring_2->addPoint(6, 4);ring_2->addPoint(3, 3);ring_2->addPoint(3, 0); // 添加起始点以形成闭环square_2->addRingDirectly(ring_2);OGRPoint point_1;OGRPoint point_2;auto a = square_1->Centroid(&point_1); // 计算square_1的形心auto b = square_2->Centroid(&point_2); // 计算square_2的形心// 释放内存delete square_1;delete square_2;return 0;
}