Releases: HEXRD/hexrdgui
Release 1.1.1
Overview
hexrdgui 1.1.1 introduces a few new features compared to the last version. A few highlights are listed below:
- Allow lmfit boundaries to be set as a delta rather than as absolute min/max
- Added support for a new (optional) image series format: EigerStreamV1, which is the current file format we are streaming off the Eiger detector at CHESS
- Allow Euler angle convention to be specified for the calibration workflows (it was fixed to intrinsic ZXZ before - but some workflows need other conventions such as extrinsic XYZ)
- Fixed fast powder calibration with subpanels
What's Changed
- Fix fast powder calibration with subpanels by @psavery in #1700
- Allow Euler convention setting for calibration by @psavery in #1701
- Increase qfib warning threshold to 1e8 by @psavery in #1702
- Add support for eiger-stream-v1 by @psavery in #1703
- Use
hkl_to_str
for consistency by @psavery in #1705 - Add option to set lmfit boundaries as a delta by @psavery in #1706
Full Changelog: 1.1.0...1.1.1
Release 1.1.0
Overview
HEXRDGUI 1.1.0 introduces numerous features and improvements. A few highlights are listed below:
- Refactored "Fast Powder" and "Composite" calibration workflows to use the new calibration dialog
- Added initial support for subpanels (ROI) to the GUI, including stitching subpanel images and locking transformations
- Significantly refactored masking, including adding the option to draw mask boundaries
- Added pressure and temperature sliders for adjusting lattice parameters
- Added constant chi overlays
- Significantly faster overlay drawing through animation
- Ability to copy reflections table to clipboard
- Also export "Q" when exporting polar data
The full list of changes are provided below.
What's Changed
- Do not set detailed text in message box by @psavery in #1599
- Preserve the value range for the cartesian view by @psavery in #1601
- Change azimuthal label to "Azimuthal Average" by @psavery in #1600
- Change executable name in plist to match by @psavery in #1602
- Use average detector pixel size for cartesian view by @psavery in #1604
- Forward arguments in Linux bash entrypoint script by @psavery in #1594
- Remove urllib3 version pinning by @psavery in #1605
- Change info group to be a QGridLayout by @psavery in #1609
- Export "Q" from the polar view by @psavery in #1610
- Simplify powder overlay generation by @psavery in #1612
- Fix a few issues due to the flipped overlay data by @psavery in #1613
- Fill nan lineout columns with zero by @psavery in #1615
- Refactor overlay drawing to use fewer artists by @psavery in #1614
- Update "qt5agg" to "qtagg" by @psavery in #1616
- Add ability to copy reflections table to clipboard by @psavery in #1618
- Add help buttons to the masking dialogs by @bnmajor in #1611
- Do not try to manually assign computed property by @bnmajor in #1624
- Fix copy-paste action for reflections table by @psavery in #1626
- Pin qt-main temporarily by @psavery in #1633
- Use yaml.safe_dump or NumpyToNativeDumper by @psavery in #1630
- Animate overlay artists through blitting by @psavery in #1631
- Add option to set eta_step size for eta omega maps by @psavery in #1606
- Make the default working dir the current directory by @psavery in #1634
- Roi by @bnmajor in #1636
- Prevent image series slider size adjustment by @psavery in #1637
- Roll back #1615 by @psavery in #1638
- Add constant chi overlays by @psavery in #1639
- Fix bug with image quick load by @bnmajor in #1641
- Fix default working dir when restoring state by @psavery in #1643
- Unpin qt6-main by @psavery in #1642
- Add dialog for pressure and temperature calculations by @psavery in #1640
- Detector templates by @bnmajor in #1644
- Azimuthal offset by @bnmajor in #1646
- Recent state files by @bnmajor in #1645
- Fix const chi refinements editor error by @psavery in #1649
- First pass at new MaskManager class by @bnmajor in #1622
- Add an option to load pre-configured instrument files by @bnmajor in #1650
- Add option to stitch ROI images in raw view by @psavery in #1655
- Improve default fast powder options by @psavery in #1656
- Add option to lock ROI group detector transforms by @psavery in #1658
- Include state file in window title by @bnmajor in #1660
- Toggle mask boundaries by @bnmajor in #1653
- Add reflections table column for HEDM intensity by @psavery in #1665
- Apply tth distortion to auto-pick example points by @psavery in #1667
- Only setup signals if masking is in progress by @bnmajor in #1669
- Add an option to color invalid pixels by @psavery in #1676
- Use masked images for color map settings by @psavery in #1674
- Performance improvements to raw view loading by @psavery in #1679
- Prevent overflow from use of np.uint32 by @psavery in #1680
- Performance improvements for toggling mask display by @psavery in #1683
- Set panel buffer values to 0 before polar view by @psavery in #1675
- Add and integrate generic calibration dialog by @psavery in #1686
- Aggregate HKL powder lines in the polar lineout by @psavery in #1687
- Improve performance of generating polar masks by @psavery in #1688
- Add pinhole radius to sample layer distortion by @psavery in #1692
- Do not rerender when overwriting loaded state file by @psavery in #1696
- Update window title if state is saved by @psavery in #1698
- Update colormap when polar masks are reapplied by @psavery in #1697
- Masking fixes by @bnmajor in #1693
Full Changelog: 1.0.0...1.1.0
Release 1.0.0
HEXRDGUI 1.0.0 includes major infrastructure upgrades, osx-arm64 packages, and a few new features and bug fixes. Below are a few highlights:
- Upgraded to Python3.11, resulting in noticeable performance improvements
- Upgraded to PySide6, which fixed some issues with the GUI interface
- Added conda packages for osx-arm64 (Apple computers after 2019)
- Added zoom box for raw view with summation plots
- Overhauled and simplified threshold masking
- Added ability to translate and rotate rectangle/ellipse masks
- Added configuration options, including changing font size and CPU limit
- Implemented numerous other minor improvements and bug fixes
NOTE: you must create a new environment for this upgrade, so you should delete your old HEXRDGUI environment first. The install instructions have also changed. Please see here for updated instructions: https://hexrdgui.readthedocs.io/en/latest/installing/
In particular, Python3.11 is now required, and installing/updating the prerelease
is now simpler. For example, installing the prerelease is now as follows:
conda install -c hexrd/label/prerelease -c conda-forge python=3.11 hexrdgui
Release 0.9.6
Many new features and improvements have been added in this release:
- many help buttons have been added throughout the program that link to pages in the documentation
- support for a cylindrical detector (used primarily in TARDIS currently)
- new Rygg pinhole distortion method (used primarily for TARDIS and PXRDIP)
- added stereographic view
- added
Q
scattering vector to mouse hover info as well as it being an option for the polar x-axis - added azimuthal overlay plots in the polar view
- new structureless calibration workflow
- support for GEL files
- fit grains is now much faster, thanks to some transform function updates in HEXRD 0.9.3
- fixed export of HEDM workflow
- many improvements to masking
- streamlined the LLNL import tool
- added reflections selection helper
- added option to perform relative scaling for structure factor
- added some command-line arguments
- added ability to export polar view to Maud
Yet another minor update for LLNL pinhole camera utilities
Minor update for a recently discovered bug in the LLNL Import Tool template rotation.
What's Changed
- added update to total angle from key input by @joelvbernier in #1309
- Update README.md by @joelvbernier in #1308
Full Changelog: 0.9.3...0.9.5
Minor updates for LLNL pinhole camera utilities
Release for FY23Q1 LLNL tutorials
There are some minor bug fixes and updates to the import tool, and the beam marker is now actively updated upon a change of instrument parameters.
What's Changed
- Llnl template bugs by @bnmajor in #1303
- modified key input deltas for crop by @joelvbernier in #1304
- Update raw beam marker on detector transformed by @psavery in #1305
- Update interactive_template.py by @joelvbernier in #1306
Full Changelog: 0.9.2...0.9.4
0.9.2 - Minor bug fix release for packaging
Major release -- boatload of new features
Overview
There are many new features and bug fixes in this release. The most salient include
- Compatability with the new ff-HEDM config introduced in https://github.com/HEXRD/hexrd/releases/tag/0.9.0
- Beam specification options for X-ray source vector, with ability to set source distance from components or manually
- Additional of pinhole camera distortion utilities for
- offset sample layer distortion
- pinhole line distortion (rudimentary; room for improvement with JRR's code)
- Layer-specific "dewarping" of the polar image
- Masks
- Ability to merge masks with existing panel buffer
- Fixes to threshold mask
- Addition of pinhole critical angle masking
What's Changed
- Clear unaggregated images also during images clear by @psavery in #1269
- Fix max_file_frames and max_total_frames functionality by @bnmajor in #1266
- Update python versions in instructions by @cjh1 in #1268
- Use all frames if no wedges provided by @bnmajor in #1274
- Add ability to delete grains in some dialogs by @psavery in #1259
- Update new active hkl indexing for eta omega maps by @psavery in #1264
- Add beam vector specification by components by @psavery in #1271
- Export indexing fitgrains config by @bnmajor in #970
- Update main window checkboxes on state load by @psavery in #1277
- Highlight grain row when point is picked by @psavery in #701
- Update active material energy with visible ones by @psavery in #1280
- Prune overlays immediately when materials change by @psavery in #1282
- Add pinhole distortion options to powder overlay editor by @psavery in #1275
- Panel buffer options by @bnmajor in #1281
- Llnl import tool by @bnmajor in #1286
- Add about dialog by @cjh1 in #1284
- Add menu item to view loaded images by @bnmajor in #1288
- Move About to new Help menu by @cjh1 in #1289
- Menu rename by @joelvbernier in #1290
- Add pinhole distortion option by @psavery in #1292
- Allow clipping powder overlays with panel buffer by @psavery in #1293
- force nsteps to be integer by @joelvbernier in #1291
- Pinhole distortion fixes by @psavery in #1294
- Do not switch to raw upon apply pinhole mask by @psavery in #1298
Full Changelog: 0.8.18...0.9.0
Minor bug fix to multi-wedge indexing
UPDATE For the ALS Multigrain X-Ray Diffraction Workshop Attendees
This release forces a re-build against hexrd 0.8.21
, which includes an important bug fix for the tutorial. No functional changes in the GUI application per se.
Full Changelog: 0.8.17...0.8.18
New features and bug fixes
What's Changed
- In fiber picking, append empty array for no spots by @psavery in #1200
- Save last hkl index for generating fibers by @psavery in #1201
- Remove the block pinning the libgfortran version for mac by @bnmajor in #1202
- Add fit grains output as fit grains input option by @psavery in #1196
- Fixes for hand picked indexing by @psavery in #1205
- Only load the "CeO2" material by default by @psavery in #1203
- Add safety check for drawing overlays in raw view by @psavery in #1207
- Materials panel overhaul by @psavery in #778
- Do not import default materials during state load by @psavery in #1208
- Ensure rotation series omegas are synced properly by @psavery in #1209
- Fix order of displayed dmin/max tth by @psavery in #1211
- changed labels, defaults, units by @joelvbernier in #1212
- Ensure the _imported_default_materials value is list by @cjh1 in #1218
- Save/load refinement statuses in the state file by @psavery in #1220
- Ensure thermal factor editor is synced with value by @psavery in #1221
- Store calibration picks in overlays by @psavery in #1223
- Add support for images with multiple discontinuous wedges by @bnmajor in #1214
- Remove use of Pathlib in state files by @psavery in #1228
- LP split by @saransh13 in #1230
- Always use eta period directly from HexrdConfig() by @psavery in #1236
- Skip missing keys in the config status setter by @psavery in #1231
- Use
shutil.move()
instead ofos.rename()
by @psavery in #1237 - Move hand picked fibers into standalone widget by @psavery in #1210
- Picks viewer: add options to show picks/overlays by @psavery in #1239
- Save calibration picks on overlay for fast powder by @psavery in #1241
- Use masked images in fast powder calibration by @psavery in #1242
- Ensure raw masks are used for masked images dict by @psavery in #1243
- Migrate PowderCalibrator to the one in hexrd by @psavery in #1244
- Bump Python to 3.10 by @cjh1 in #1245
- Masks to panel buffer by @bnmajor in #1246
- Add button to remove duplicate atoms by @psavery in #1250
- Add option to clear panel buffer by @bnmajor in #1248
- Add ability to save lineout as xy or csv by @psavery in #1251
- Add option to display the beam marker by @psavery in #1249
- Add a viewer for the panel buffer by @psavery in #1252
- Fix non-responding widgets for multiple indexing runs by @psavery in #1257
- Fix Fast Powder calibration in Cartesian view by @psavery in #1265
- Add image calculator by @psavery in #1253
- Re-use IndexingResultsDialog to plot grains by @psavery in #1258
Full Changelog: 0.8.16...0.8.17