QGroundControl
Ground Control Station for MAVLink Drones
Loading...
Searching...
No Matches
ShapeFileHelper Class Reference

Routines for loading polygons or polylines from KML or SHP files. More...

#include <ShapeFileHelper.h>

+ Inheritance diagram for ShapeFileHelper:
+ Collaboration diagram for ShapeFileHelper:

Public Types

enum class  ShapeType { Polygon , Polyline , Point , Error }
 

Static Public Member Functions

static QStringList fileDialogKMLFilters ()
 
static QStringList fileDialogKMLOrSHPFilters ()
 
static ShapeType determineShapeType (const QString &file, QString &errorString)
 
static int getEntityCount (const QString &file, QString &errorString)
 Get the number of geometry entities in the file.
 
static bool loadPolygonsFromFile (const QString &file, QList< QList< QGeoCoordinate > > &polygons, QString &errorString, double filterMeters=kDefaultVertexFilterMeters)
 
static bool loadPolylinesFromFile (const QString &file, QList< QList< QGeoCoordinate > > &polylines, QString &errorString, double filterMeters=kDefaultVertexFilterMeters)
 
static bool loadPointsFromFile (const QString &file, QList< QGeoCoordinate > &points, QString &errorString)
 Load point entities.
 

Static Public Attributes

static constexpr double kDefaultVertexFilterMeters = 5.0
 Default distance threshold for filtering nearby vertices (meters)
 
static constexpr const char * kmlFileExtension = ".kml"
 
static constexpr const char * shpFileExtension = ".shp"
 

Detailed Description

Routines for loading polygons or polylines from KML or SHP files.

Definition at line 10 of file ShapeFileHelper.h.

Member Enumeration Documentation

◆ ShapeType

enum class ShapeFileHelper::ShapeType
strong
Enumerator
Polygon 
Polyline 
Point 
Error 

Definition at line 22 of file ShapeFileHelper.h.

Member Function Documentation

◆ determineShapeType()

ShapeFileHelper::ShapeType ShapeFileHelper::determineShapeType ( const QString &  file,
QString &  errorString 
)
static

◆ fileDialogKMLFilters()

QStringList ShapeFileHelper::fileDialogKMLFilters ( )
static

< File filter list for load/save KML file dialogs File filter list for load/save shape file dialogs

Definition at line 108 of file ShapeFileHelper.cc.

References kmlFileExtension.

◆ fileDialogKMLOrSHPFilters()

QStringList ShapeFileHelper::fileDialogKMLOrSHPFilters ( )
static

Definition at line 114 of file ShapeFileHelper.cc.

References kmlFileExtension, and shpFileExtension.

◆ getEntityCount()

int ShapeFileHelper::getEntityCount ( const QString &  file,
QString &  errorString 
)
static

Get the number of geometry entities in the file.

Definition at line 45 of file ShapeFileHelper.cc.

References errorString, KMLHelper::getEntityCount(), and SHPFileHelper::getEntityCount().

◆ loadPointsFromFile()

bool ShapeFileHelper::loadPointsFromFile ( const QString &  file,
QList< QGeoCoordinate > &  points,
QString &  errorString 
)
static

Load point entities.

Definition at line 92 of file ShapeFileHelper.cc.

References errorString, KMLHelper::loadPointsFromFile(), and SHPFileHelper::loadPointsFromFile().

◆ loadPolygonsFromFile()

bool ShapeFileHelper::loadPolygonsFromFile ( const QString &  file,
QList< QList< QGeoCoordinate > > &  polygons,
QString &  errorString,
double  filterMeters = kDefaultVertexFilterMeters 
)
static

Load all polygon entities

Parameters
filterMetersFilter vertices closer than this distance (0 to disable)

Definition at line 60 of file ShapeFileHelper.cc.

References errorString, KMLHelper::loadPolygonsFromFile(), and SHPFileHelper::loadPolygonsFromFile().

Referenced by QGCMapPolygon::loadKMLOrSHPFile().

◆ loadPolylinesFromFile()

bool ShapeFileHelper::loadPolylinesFromFile ( const QString &  file,
QList< QList< QGeoCoordinate > > &  polylines,
QString &  errorString,
double  filterMeters = kDefaultVertexFilterMeters 
)
static

Load all polyline entities

Parameters
filterMetersFilter vertices closer than this distance (0 to disable)

Definition at line 76 of file ShapeFileHelper.cc.

References errorString, KMLHelper::loadPolylinesFromFile(), and SHPFileHelper::loadPolylinesFromFile().

Referenced by QGCMapPolyline::loadKMLOrSHPFile().

Member Data Documentation

◆ kDefaultVertexFilterMeters

constexpr double ShapeFileHelper::kDefaultVertexFilterMeters = 5.0
staticconstexpr

Default distance threshold for filtering nearby vertices (meters)

Definition at line 30 of file ShapeFileHelper.h.

◆ kmlFileExtension

constexpr const char* ShapeFileHelper::kmlFileExtension = ".kml"
staticconstexpr

Definition at line 50 of file ShapeFileHelper.h.

Referenced by fileDialogKMLFilters(), and fileDialogKMLOrSHPFilters().

◆ shpFileExtension

constexpr const char* ShapeFileHelper::shpFileExtension = ".shp"
staticconstexpr

Definition at line 51 of file ShapeFileHelper.h.

Referenced by fileDialogKMLOrSHPFilters().


The documentation for this class was generated from the following files: