Class: QgsAdvancedDigitizingDockWidget¶
-
class
qgis.gui.
QgsAdvancedDigitizingDockWidget
(canvas: QgsMapCanvas, parent: QWidget = None)¶ Bases:
qgis._gui.QgsDockWidget
Create an advanced digitizing dock widget
- Parameters
canvas – The map canvas on which the widget operates
parent – The parent
The QgsAdvancedDigitizingDockWidget class is a dockable widget used to handle the CAD tools on top of a selection of map tools. It handles both the UI and the constraints. Constraints are applied by implementing filters called from QgsMapToolAdvancedDigitizing.
Enums
Methods
Adds point to the CAD point list
Returns the additional constraints which are used to place perpendicular/parallel segments to snapped segments on the canvas
align to segment for additional constraint.
apply the CAD constraints.
determines if CAD tools are enabled or if map tools behaves “nomally”
Filter key events to e.g.
Clear any cached previous clicks and helper lines
Removes all points from the CAD point list
Returns true if a constraint on a common angle is active
Returns the
CadConstraint
on the angleReturns the
CadConstraint
on the distanceReturns the
CadConstraint
on the X coordinateReturns the
CadConstraint
on the Y coordinateconstruction mode is used to draw intermediate points.
The last point.
Disable the widget.
Enables the tool (call this when an appropriate map tool is set and in the condition to make use of cad digitizing) Normally done automatically from QgsMapToolAdvancedDigitizing.activate() but may need to be fine tuned if the map tool depends on preconditions like a feature selection.
Returns the action used to enable/disable the tools
Disables the CAD tools when hiding the dock
Returns the point locator match
The penultimate point.
The number of points in the CAD point helper list
The previous point.
unlock all constraints
Configures list of current CAD points
Snapped to a segment
Is it snapped to a vertex
Updates canvas item that displays constraints on the ma
Signals
Sometimes a constraint may change the current point out of a mouse event.
Remove any previously emitted warnings (if any) [signal]
Push a warning
Attributes
-
AbsoluteAngle
= 1¶
-
class
AdditionalConstraint
¶ Bases:
int
-
class
CadCapacities
¶ Bases:
sip.wrapper
QgsAdvancedDigitizingDockWidget.CadCapacities(Union[QgsAdvancedDigitizingDockWidget.CadCapacities, QgsAdvancedDigitizingDockWidget.CadCapacity]) QgsAdvancedDigitizingDockWidget.CadCapacities(QgsAdvancedDigitizingDockWidget.CadCapacities)
-
baseClass
¶ alias of
QgsAdvancedDigitizingDockWidget
-
-
class
CadCapacity
¶ Bases:
int
-
class
CadConstraint
(lineEdit: QLineEdit, lockerButton: QToolButton, relativeButton: QToolButton = None, repeatingLockButton: QToolButton = None)¶ Bases:
sip.wrapper
Constructor for CadConstraint.
- Parameters
lineEdit – associated line edit for constraint value
lockerButton – associated button for locking constraint
relativeButton – optional button for toggling relative constraint mode
repeatingLockButton – optional button for toggling repeating lock mode
QgsAdvancedDigitizingDockWidget.CadConstraint(QgsAdvancedDigitizingDockWidget.CadConstraint)
The CadConstraint is an abstract class for all basic constraints (angle/distance/x/y). It contains all values (locked, value, relative) and pointers to corresponding widgets.
Note
Relative is not mandatory since it is not used for distance.
-
HardLock
= 2¶
-
class
LockMode
¶ Bases:
int
-
NoLock
= 0¶
-
SoftLock
= 1¶
-
isLocked
(self) → bool¶ Is any kind of lock mode enabled
-
isRepeatingLock
(self) → bool¶ Returns true if a repeating lock is set for the constraint. Repeating locks are not automatically cleared after a new point is added.
See also
New in version 2.16.
-
lineEdit
(self) → QLineEdit¶ The line edit that manages the value of the constraint
-
lockMode
(self) → QgsAdvancedDigitizingDockWidget.CadConstraint.LockMode¶ The current lock mode of this constraint
- Returns
Lock mode
-
relative
(self) → bool¶ Is the constraint in relative mode
-
setLockMode
(self, mode: QgsAdvancedDigitizingDockWidget.CadConstraint.LockMode)¶ Set the lock mode
-
setRelative
(self, relative: bool)¶ Set if the constraint should be treated relative
-
setRepeatingLock
(self, repeating: bool)¶ Sets whether a repeating lock is set for the constraint. Repeating locks are not automatically cleared after a new point is added.
- Parameters
repeating – set to true to set the lock to repeat automatically
See also
New in version 2.16.
-
setValue
(self, value: float, updateWidget: bool = True)¶ Set the value of the constraint
- Parameters
value – new value for constraint
updateWidget – set to false to prevent automatically updating the associated widget’s value
-
toggleLocked
(self)¶ Toggle lock mode
-
toggleRelative
(self)¶ Toggle relative mode
-
value
(self) → float¶ The value of the constraint
-
NoConstraint
= 0¶
-
Parallel
= 2¶
-
Perpendicular
= 1¶
-
RelativeAngle
= 2¶
-
RelativeCoordinates
= 4¶
-
actionEvent
()¶
-
addPoint
(self, point: QgsPointXY)¶ Adds point to the CAD point list
New in version 3.0.
-
additionalConstraint
(self) → QgsAdvancedDigitizingDockWidget.AdditionalConstraint¶ Returns the additional constraints which are used to place perpendicular/parallel segments to snapped segments on the canvas
-
alignToSegment
(self, e: QgsMapMouseEvent, lockMode: QgsAdvancedDigitizingDockWidget.CadConstraint.LockMode = QgsAdvancedDigitizingDockWidget.CadConstraint.HardLock) → bool¶ align to segment for additional constraint. If additional constraints are used, this will determine the angle to be locked depending on the snapped segment.
New in version 3.0.
-
applyConstraints
(self, e: QgsMapMouseEvent) → bool¶ apply the CAD constraints. The will modify the position of the map event in map coordinates by applying the CAD constraints.
- Returns
false if no solution was found (invalid constraints)
-
cadEnabled
(self) → bool¶ determines if CAD tools are enabled or if map tools behaves “nomally”
-
canvasKeyPressEventFilter
(self, e: QKeyEvent) → bool¶ Filter key events to e.g. toggle construction mode or adapt constraints
- Parameters
e – A mouse event (may be modified)
- Returns
If the event is hidden (construction mode hides events from the maptool)
-
changeEvent
()¶
-
childEvent
()¶
-
clear
(self)¶ Clear any cached previous clicks and helper lines
-
clearPoints
(self)¶ Removes all points from the CAD point list
New in version 3.0.
-
closeEvent
()¶
-
commonAngleConstraint
(self) → bool¶ Returns true if a constraint on a common angle is active
-
connectNotify
()¶
-
constraintAngle
(self) → QgsAdvancedDigitizingDockWidget.CadConstraint¶ Returns the
CadConstraint
on the angle
-
constraintDistance
(self) → QgsAdvancedDigitizingDockWidget.CadConstraint¶ Returns the
CadConstraint
on the distance
-
constraintX
(self) → QgsAdvancedDigitizingDockWidget.CadConstraint¶ Returns the
CadConstraint
on the X coordinate
-
constraintY
(self) → QgsAdvancedDigitizingDockWidget.CadConstraint¶ Returns the
CadConstraint
on the Y coordinate
-
constructionMode
(self) → bool¶ construction mode is used to draw intermediate points. These points won’t be given any further (i.e. to the map tools)
-
contextMenuEvent
()¶
-
create
()¶
-
currentPoint
(self) → Tuple[QgsPointXY, bool]¶ The last point. Helper for the CAD point list. The CAD point list is the list of points currently digitized. It contains both “normal” points and intermediate points (construction mode).
-
customEvent
()¶
-
destroy
()¶
-
disable
(self)¶ Disable the widget. Normally done automatically from
QgsMapToolAdvancedDigitizing.deactivate()
-
disconnectNotify
()¶
-
dragEnterEvent
()¶
-
dragLeaveEvent
()¶
-
dragMoveEvent
()¶
-
dropEvent
()¶
-
enable
(self)¶ Enables the tool (call this when an appropriate map tool is set and in the condition to make use of cad digitizing) Normally done automatically from QgsMapToolAdvancedDigitizing.activate() but may need to be fine tuned if the map tool depends on preconditions like a feature selection.
-
enableAction
(self) → QAction¶ Returns the action used to enable/disable the tools
-
enterEvent
()¶
-
event
()¶
-
eventFilter
()¶
-
focusInEvent
()¶
-
focusNextChild
()¶
-
focusNextPrevChild
()¶
-
focusOutEvent
()¶
-
focusPreviousChild
()¶
-
hideEvent
(self, QHideEvent)¶ Disables the CAD tools when hiding the dock
-
initPainter
()¶
-
initStyleOption
()¶
-
inputMethodEvent
()¶
-
isSignalConnected
()¶
-
keyPressEvent
(self, e: QKeyEvent)¶
-
keyReleaseEvent
()¶
-
leaveEvent
()¶
-
mapPointMatch
(self) → QgsPointLocator.Match¶ Returns the point locator match
New in version 3.4.
-
metric
()¶
-
mouseDoubleClickEvent
()¶
-
mouseMoveEvent
()¶
-
mousePressEvent
()¶
-
mouseReleaseEvent
()¶
-
moveEvent
()¶
-
nativeEvent
()¶
-
paintEvent
()¶
-
penultimatePoint
(self) → Tuple[QgsPointXY, bool]¶ The penultimate point. Helper for the CAD point list. The CAD point list is the list of points currently digitized. It contains both “normal” points and intermediate points (construction mode).
-
pointChanged
¶ Sometimes a constraint may change the current point out of a mouse event. This happens normally when a constraint is toggled.
- Parameters
point – The last known digitizing point. Can be used to emulate a mouse event. [signal]
-
pointsCount
(self) → int¶ The number of points in the CAD point helper list
-
popWarning
¶ Remove any previously emitted warnings (if any) [signal]
-
previousPoint
(self) → Tuple[QgsPointXY, bool]¶ The previous point. Helper for the CAD point list. The CAD point list is the list of points currently digitized. It contains both “normal” points and intermediate points (construction mode).
-
pushWarning
¶ Push a warning
- Parameters
message – An informative message [signal]
-
receivers
()¶
-
releaseLocks
(self, releaseRepeatingLocks: bool = True)¶ unlock all constraints
- Parameters
releaseRepeatingLocks – set to false to preserve the lock for any constraints set to repeating lock mode
New in version 3.0.
-
resizeEvent
()¶
-
sender
()¶
-
senderSignalIndex
()¶
-
setPoints
(self, points: Iterable[QgsPointXY])¶ Configures list of current CAD points
Some map tools may find it useful to override list of CAD points that is otherwise automatically populated when user clicks with left mouse button on map canvas.
New in version 3.0.
-
showEvent
()¶
-
snappedSegment
(self) → List[QgsPointXY]¶ Snapped to a segment
-
snappedToVertex
(self) → bool¶ Is it snapped to a vertex
-
tabletEvent
()¶
-
timerEvent
()¶
-
updateCadPaintItem
(self)¶ Updates canvas item that displays constraints on the ma
New in version 3.0.
-
updateMicroFocus
()¶
-
wheelEvent
()¶