-
Notifications
You must be signed in to change notification settings - Fork 21
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
scanning probe dataclasses and back scan functionality #97
base: main
Are you sure you want to change the base?
Conversation
this addresses #90 |
This reverts commit 9183edf.
@timoML I am in the process of merging the tilt correction into my branch. Two thoughts:
@property
def supports_coordinate_transform(self):
# before:
# return self.get_constraints().allow_coordinate_transform
# change to:
return issinstance(self, CoordinateTransformMixin)
|
The dummy toolchain is ready to test @LukePiewalker @timoML ! Not sure if the tilt correction works, I tried my best in resolving all merge conflicts. The NI interfuse does not work yet. |
@timoML everything should be compatible with Python 3.8 now |
From a first look with the scanning dummy, the tilt correction works as intended. Unchanged images are due to the 2D limitation of the dummy. I'll try to have a look on real hardware asap. Concerning your two changes:
This way:
|
It looks like the backscan is not implemented for the
|
Yes, that's correct! It's the last bigger thing that needs to be done. I think I can do it this week. |
Other than the issue with |
Description
Interface
ScanSettings
dataclass to hold all settings of a scanning probe measurement (closes [New Feature] scanning probe toolchain: ScanSettings #90)ScannerChannel
,ScannerAxis
,ScanConstraints
andScanData
withdataclass
, replace type checks by type annotationsScanConstraints
holdsScannerAxis
andScannerChannel
instances,ScanData
holdsScanSettings
instance,ScanData
does not need to hold completeScanConstraints
ScanConstraints
scan_settings
attribute toScanningProbeInterface
BackScanCapability
Logic and GUI
Motivation and Context
This refactoring was initially motivated by an extension of the scanning probe measurement toolchain to scans which are not confocal/spacial. It was decided later that this is not a good design choice. However, introducing a
ScanSettings
dataclass allowed to add backward scanning functionality (see #63) and enabled a major refactoring of the entire toolchain towards improved code readability.How Has This Been Tested?
This was tested with the dummy as well as nidaq hardware. There are unit tests for parts of the dataclasses.
Types of changes
Checklist:
/docs/changelog.md
.(syntax, indentation, mutable default values, etc.).