16 #ifndef QGSMAPTOOLCAPTURE_H 
   17 #define QGSMAPTOOLCAPTURE_H 
   37 class QgsMapToolCaptureRubberBand;
 
   62     bool curveIsComplete() 
const;
 
   75     void addPoint( 
const QgsPoint &point, 
bool doUpdate = 
true );
 
   78     void movePoint( 
const QgsPoint &point );
 
   81     void movePoint( 
int index, 
const QgsPoint &point );
 
   96     QgsPoint pointFromEnd( 
int posFromEnd ) 
const;
 
   99     void removeLastPoint();
 
  144     Q_DECLARE_FLAGS( Capabilities, Capability )
 
  156     void activate() override;
 
  157     void deactivate() override;
 
  216     void setCircularDigitizingEnabled( 
bool enable );
 
  222     void updateExtraSnapLayer();
 
  310     void startCapturing();
 
  317     bool isCapturing() const;
 
  368     void stopCapturing();
 
  372     bool tracingEnabled();
 
  378     bool tracingAddVertex( const 
QgsPointXY &point );
 
  381     QgsMapToolCaptureRubberBand *createCurveRubberBand() const;
 
  388     void resetRubberBand();
 
  395     bool mCapturing = false;
 
  404     std::
unique_ptr<QgsMapToolCaptureRubberBand> mTempRubberBand;
 
  413     void validateGeometry();
 
  423     bool mCaptureModeFromLayer = false;
 
Keeps a pointer to a QObject and deletes it whenever this object is deleted.
Abstract base class for all geometries.
Compound curve geometry type.
Abstract base class for curved geometry type.
A rubberband class for QgsAbstractGeometry (considering curved geometries).
virtual void setGeometry(QgsAbstractGeometry *geom)
Sets geometry (takes ownership). Geometry is expected to be in map coordinates.
A geometry is the spatial representation of a feature.
Map canvas is a class for displaying all GIS data types on a canvas.
Base class for all map layer types.
A QgsMapMouseEvent is the result of a user interaction with the mouse on a QgsMapCanvas.
The class defines interface for querying point location:
A class to represent a 2D point.
Point geometry type, with support for z-dimension and m-values.
A class for drawing transient features (e.g.
Class that shows snapping marker on map canvas for the current snapping match.
Represents a vector layer which manages a vector based data sets.
A class for marking vertices of features using e.g.
Handles storage of information regarding WKB types and their properties.
GeometryType
The geometry types are used to group QgsWkbTypes::Type in a coarse way.
Type
The WKB type describes the number of dimensions a geometry has.
std::unique_ptr< GEOSGeometry, GeosDeleter > unique_ptr
Scoped GEOS pointer.
As part of the API refactoring and improvements which landed in the Processing API was substantially reworked from the x version This was done in order to allow much of the underlying Processing framework to be ported into c
QVector< QgsPoint > QgsPointSequence
qint64 QgsFeatureId
64 bit feature ids negative numbers are used for uncommitted/newly added features
Q_DECLARE_OPERATORS_FOR_FLAGS(QgsField::ConfigurationFlags) CORE_EXPORT QDataStream &operator<<(QDataStream &out
Writes the field to stream out. QGIS version compatibility is not guaranteed.