QGIS API Documentation  2.18.21-Las Palmas (9fba24a)
Classes | Public Types | Public Member Functions | List of all members
QgsSnapper Class Reference

A class that allows advanced snapping operations on a set of vector layers. More...

#include <qgssnapper.h>

Classes

struct  SnapLayer
 

Public Types

enum  SnappingMode { SnapWithOneResult, SnapWithResultsForSamePosition, SnapWithResultsWithinTolerances }
 
enum  SnappingType { SnapToVertex, SnapToSegment, SnapToVertexAndSegment }
 Snap to vertex, to segment or both. More...
 

Public Member Functions

Q_DECL_DEPRECATED QgsSnapper (QgsMapRenderer *mapRender)
 
 QgsSnapper (const QgsMapSettings &mapSettings)
 
void setSnapLayers (const QList< QgsSnapper::SnapLayer > &snapLayers)
 
void setSnapMode (QgsSnapper::SnappingMode snapMode)
 
int snapMapPoint (const QgsPoint &mapCoordPoint, QList< QgsSnappingResult > &snappingResult, const QList< QgsPoint > &excludePoints=QList< QgsPoint >())
 Does the snapping operation. More...
 
Q_DECL_DEPRECATED int snapPoint (QPoint startPoint, QList< QgsSnappingResult > &snappingResult, const QList< QgsPoint > &excludePoints=QList< QgsPoint >())
 Does the snapping operation. More...
 

Detailed Description

A class that allows advanced snapping operations on a set of vector layers.

Definition at line 63 of file qgssnapper.h.

Member Enumeration Documentation

◆ SnappingMode

Enumerator
SnapWithOneResult 

Only one snapping result is returned.

SnapWithResultsForSamePosition 

Several snapping results which have the same position are returned.

This is useful for topological editing

SnapWithResultsWithinTolerances 

All results within the given layer tolerances are returned.

Definition at line 75 of file qgssnapper.h.

◆ SnappingType

Snap to vertex, to segment or both.

Enumerator
SnapToVertex 
SnapToSegment 
SnapToVertexAndSegment 

Definition at line 67 of file qgssnapper.h.

Constructor & Destructor Documentation

◆ QgsSnapper() [1/2]

QgsSnapper::QgsSnapper ( QgsMapRenderer mapRender)
Deprecated:
since 2.4 - use constructor with QgsMapSettings

Definition at line 28 of file qgssnapper.cpp.

◆ QgsSnapper() [2/2]

QgsSnapper::QgsSnapper ( const QgsMapSettings mapSettings)
explicit

Definition at line 35 of file qgssnapper.cpp.

Member Function Documentation

◆ setSnapLayers()

void QgsSnapper::setSnapLayers ( const QList< QgsSnapper::SnapLayer > &  snapLayers)

Definition at line 146 of file qgssnapper.cpp.

◆ setSnapMode()

void QgsSnapper::setSnapMode ( QgsSnapper::SnappingMode  snapMode)

Definition at line 152 of file qgssnapper.cpp.

◆ snapMapPoint()

int QgsSnapper::snapMapPoint ( const QgsPoint mapCoordPoint,
QList< QgsSnappingResult > &  snappingResult,
const QList< QgsPoint > &  excludePoints = QList<QgsPoint>() 
)

Does the snapping operation.

Parameters
mapCoordPointthe start point for snapping (in map coordinates)
snappingResultthe list where the results are inserted (everything in map coordinate system)
excludePointsa list with (map coordinate) points that should be excluded in the snapping result. Useful e.g. for vertex moves where a vertex should not be snapped to its original position
Returns
0 in case of success

Definition at line 47 of file qgssnapper.cpp.

◆ snapPoint()

int QgsSnapper::snapPoint ( QPoint  startPoint,
QList< QgsSnappingResult > &  snappingResult,
const QList< QgsPoint > &  excludePoints = QList<QgsPoint>() 
)

Does the snapping operation.

Parameters
startPointthe start point for snapping (in pixel coordinates)
snappingResultthe list where the results are inserted (everything in map coordinate system)
excludePointsa list with (map coordinate) points that should be excluded in the snapping result. Useful e.g. for vertex moves where a vertex should not be snapped to its original position
Returns
0 in case of success
Deprecated:

Definition at line 41 of file qgssnapper.cpp.


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