-
-
Notifications
You must be signed in to change notification settings - Fork 3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[advanced digitizing] Implement visual construction guides #57584
Conversation
python/PyQt6/gui/auto_generated/qgsadvanceddigitizingdockwidget.sip.in
Outdated
Show resolved
Hide resolved
Very interesting feature! Some questions:
Thanks! |
@lbartoletti , glad this functionality is peaking your interest :) Here are As to your Qs:
|
b5f0d09
to
8e2cf04
Compare
@nyalldawson , thanks for the review, your comments were addressed. A couple of tests were also added to test guide recording and snapping. |
8e2cf04
to
fb3aa18
Compare
python/PyQt6/gui/auto_generated/qgsadvanceddigitizingdockwidget.sip.in
Outdated
Show resolved
Hide resolved
fb3aa18
to
bee64cd
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Just one small tweak
{ | ||
if ( QgsVectorLayer *constructionGuidesLayer = mAdvancedDigitizingDockWidget->constructionGuidesLayer() ) | ||
{ | ||
QgsFeatureIterator it = constructionGuidesLayer->getFeatures( mMapCanvas->mapSettings().visibleExtent() ); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
QgsFeatureIterator it = constructionGuidesLayer->getFeatures( mMapCanvas->mapSettings().visibleExtent() ); | |
QgsFeatureIterator it = constructionGuidesLayer->getFeatures( QgsFeatureRequest().setNoAttributes().setFilterRect( mMapCanvas->mapSettings().visibleExtent() ) ); |
bee64cd
to
35784b2
Compare
In the video, at 0:34 it appears like you need to click on Show construction guides twice for the option to get unchecked. Is that the case? |
Regression caused by qgis#57584
Regression caused by #57584
This pull request has been tagged for the changelog.
You can edit the description. Format available for credits
Thank you! |
@nirvn A documentation ticket will be opened at https://github.com/qgis/QGIS-Documentation when this PR is merged. Please update the description (not the comments) with helpful description and screenshot to help the work from documentors. Thank you! |
@nirvn |
Description
This PR adds visual construction guides to the advanced digitizing dock widget which builds on top of our preexisting CAD construction mode.
UI wise, the functionality is exposed through a set of actions within a new drop-down menu attached to the construction activation toolbar button:
When recording construction guides, QGIS will render all construction steps taken as dashed lines. Those lines will remain visible as long as advanced digitizing is enabled. The guides are snap-able, allowing for construction steps to begin mid-way into a previous set of steps too.
In action:
vokoscreenNG-2024-05-28_11-26-37.mp4
The construction guides are stored in a vector layer, which is exposed through the advanced digitizing dock widget, allowing for further customization of those guides via e.g. python plugins.