QgsCoordinateSequence QgsCurve::coordinateSequence() const { QgsCoordinateSequence sequence; sequence.append( QgsRingSequence() ); sequence.back().append( QgsPointSequence() ); points( sequence.back().back() ); return sequence; }
QgsCoordinateSequence QgsGeometryCollection::coordinateSequence() const { QgsCoordinateSequence sequence; QVector< QgsAbstractGeometry * >::const_iterator geomIt = mGeometries.constBegin(); for ( ; geomIt != mGeometries.constEnd(); ++geomIt ) { QgsCoordinateSequence geomCoords = ( *geomIt )->coordinateSequence(); QgsCoordinateSequence::const_iterator cIt = geomCoords.constBegin(); for ( ; cIt != geomCoords.constEnd(); ++cIt ) { sequence.push_back( *cIt ); } } return sequence; }
QgsCoordinateSequence QgsCurvePolygon::coordinateSequence() const { QgsCoordinateSequence sequence; sequence.append( QgsRingSequence() ); if ( mExteriorRing ) { sequence.back().append( QgsPointSequence() ); mExteriorRing->points( sequence.back().back() ); } for ( const QgsCurve *ring : mInteriorRings ) { sequence.back().append( QgsPointSequence() ); ring->points( sequence.back().back() ); } return sequence; }