前言
依据QGIS的API文档网站
https://api.qgis.org/api/3.22/annotated.html
一、类继承关系截图
1.QgsPoint与QgsPointXY
width
2.QgsAbstractGeometry
QgsAbstractGeometry抽象类为 QGIS 中众多具体几何类型,如点、线、面、多点、多线、多面等,定义通用的接口和基本行为
二、组合类型
1.基于QgsPoint
QgsAbstractGeometry头文件中:
typedef QVector< QgsPoint > QgsPointSequence;
#ifndef SIP_RUN
typedef QVector< QgsPointSequence > QgsRingSequence;
typedef QVector< QgsRingSequence > QgsCoordinateSequence;
#else
typedef QVector< QVector< QgsPoint > > QgsRingSequence;
typedef QVector< QVector< QVector< QgsPoint > > > QgsCoordinateSequence;
#endif
QgsPoint 表示地理空间中一个点的类,包含点的坐标信息
QgsPointSequence 可以理解为一个由 QgsPoint 对象组成的序列,用于表示一系列连续的点,比如一条线可以由多个点组成,就可以用 QgsPointSequence 来表示。
QgsRingSequence 可以理解为一系列的点序列,在地理空间中,一个多边形通常由一个或多个环(ring)组成,每个环又是由一系列点构成的,所以 QgsRingSequence 可以用来表示一个多边形的多个环。
QgsCoordinateSequence 可以表示多个多边形的集合,因为每个 QgsRingSequence 可以表示一个多边形,多个 QgsRingSequence 组合起来就可以表示多个多边形。
QgsGeometryt头文件中
typedef QgsPointSequence QgsPolyline;
QgsPolyline 同样代表一系列连续的点。在地理信息系统里,一系列连续的点通常用于表示折线(polyline),折线是由多个线段依次连接而成的几何图形,可用于表示道路、河流等线性地理要素。
总结表格
类型 | 图形 |
---|---|
QgsPoint | 点 |
QgsPointSequence、QgsPolyline | 直线、折线(多段线) |
QgsRingSequence | 折线集合、(套岛)多边形 |
QgsCoordinateSequence | 多边形集合 |
2.基于QgsPointXY
QgsGeometryt头文件中
typedef QVector<QgsPointXY> QgsPolylineXY;
#ifndef SIP_RUN
typedef QVector<QgsPolylineXY> QgsPolygonXY;
#else
typedef QVector<QVector<QgsPointXY>> QgsPolygonXY;
#endif
typedef QVector<QgsPointXY> QgsMultiPointXY;
#ifndef SIP_RUN
typedef QVector<QgsPolylineXY> QgsMultiPolylineXY;
#else
typedef QVector<QVector<QgsPointXY>> QgsMultiPolylineXY;
#endif
#ifndef SIP_RUN
typedef QVector<QgsPolygonXY> QgsMultiPolygonXY;
#else
typedef QVector<QVector<QVector<QgsPointXY>>> QgsMultiPolygonXY;
#endif
QgsPointXY 通常代表二维平面上的一个点,包含 x 和 y 坐标
QgsPolylineXY 表示由多个 QgsPointXY 组成的折线,在地理空间中,折线可以用来表示道路、河流等线性要素。
QgsPolygonXY 用于表示多边形。在地理空间中,多边形通常由一个或多个环(ring)组成,每个环是一个闭合的折线。
QgsMultiPointXY 表示多点集合,在地理空间中可以用来表示多个独立的点要素,比如多个城市的位置。
QgsMultiPolylineXY 表示多折线集合,即由多个折线组成的集合,在地理空间中可以用来表示多条道路、多条河流等。
QgsMultiPolygonXY 表示多多边形集合,即由多个多边形组成的集合,在地理空间中可以用来表示多个行政区、多个湖泊等
类型 | 图形 |
---|---|
QgsPointXY | 点 |
QgsMultiPointXY、QgsPolylineXY | 多点、直线、折线 |
QgsMultiPolylineXY、QgsPolygonXY | 折线集合、(套岛)多边形 |
QgsMultiPolygonXY | 多边形集合 |
总结
提示:这里对文章进行总结:
简单介绍基于QgsPoint和QgsPointXY组合出的几个类型。