What’s New and Fixed in DREAM3D-NX Version 7.4.2
New Quad View Visualization Module
A new top-level module pairing synchronized 3D volume rendering with three orthogonal or oblique slice views — plus thick-slab projections, measurement rulers, markers, and comprehensive color controls.Major Charting Improvements
Multi-series histograms, grouped or overlaid bars, cumulative distribution curves, and secondary axes — with chart navigation now unified across every module.Quick Color Presets
Quick access to your most frequently used color presetsGenerate Python Scripts from Pipelines
Generate a complete Python script — or a single filter snippet — directly from the Pipeline View, the Bookmarks View, or the Filter List.Write Image File Enhancements
Writes two-dimensional images or volume slices as PNG, JPEG, BMP, or TIFF files, with optional color mapping, image flipping, and a physical scale barHDF5 File Compression
Optionally enable HDF5 compression on your data sets. Completely user configurable.Pole Figure Improvements
Pole figure layout and rendering moved into EbsdLib, discrete figures now draw configurable-radius circular markers instead of flipping single pixels, and the hexagonal convention is selectable.New IPF Color Keys
Compute IPF Colors now offers three coloring schemes: TSL, the EDAX/OIM standard that reproduces DREAM3D 6.x output and remains the default; PUCM, a perceptually uniform color map; and Nolze-Hielscher, MTEX’s HSV-style coloring.Orientation Averaging Improvements
Verification & Validation
DREAM.3D 6.5.171 has been in the field for a number of years, but it was never subjected to formal V&V — so “DREAM3D-NX matches DREAM.3D 6.5.171” is not a correctness check. This release verifies filters independently, against closed-form analytical results, trusted reference implementations, published data, and derivable invariants. Forty-one filters now carry V&V reports documenting 115 deviations from the legacy application, roughly 40 percent of which were outright defects.
Twenty-five of those deviations are fixed in 7.4.2 — in Read H5OINA Data, Segment Features (C-Axis Misalignment), Multi-Threshold Objects, Erode/Dilate Bad Data, Compute Schmids, Read Oxford Instr. EBSD Data (.ctf), Compute Feature Neighbor C-Axis Misalignments, Compute Feature Neighbor Misorientations, and Rotate Euler Reference Frame. If you used any of these in DREAM3D-NX 7.4.1 or earlier, please regenerate the affected results.
The campaign also found seventeen defects in DREAM.3D 6.5.171 itself that DREAM3D-NX does not share, several present since 2013. If you rely on results produced by the legacy application, they are worth reviewing.
Every deviation — both directions, with root cause, affected users, and a recommendation — is listed on the Verification & Validation page.
New Filters
- Group MicroTexture Regions groups neighboring features in hexagonal materials when their c-axes are aligned within a specified tolerance.
- Keep/Remove Ranked Features keeps or removes features by rank, count, percentage, or contribution to a measured quantity.
- M3C Multi-Material Marching Cubes generates a conformal triangle mesh from a segmented multi-feature volume.
- Read NIfTI File (Version 1) reads
.niiand compressed.nii.gzscientific and medical volumes. - Regularize Z Spacing resamples serial-section data with irregular slice positions onto a uniformly spaced Z grid.
Known Issues
- Synthetic Building Filters are not yet implemented
- Long visualization operations can lock up the GUI. Please be patient for those operations to end.
- Compute Feature Centroids will not respect periodic boundaries in a model
- The Anaconda version will not save your GUI window layout correctly. The workaround is to create a layout to your liking and save it as a preset.
- Computing Volumes from Triangle Features will not work correctly unless all triangle normals are consistent and the surface mesh is watertight.
Complete List of updates
In the below tables are summarized git logs from the commits since the last release. Each line should have a short code at the start of the line indicate a general area that the commit falls under. Also included is the GitHub Pull Request (PR) number and the Git commit hash. These can be fully reviewed at:
https://www.github.com/bluequartzsoftware/simplnx
https://www.github.com/bluequartzsoftware/DREAM3DNX
View the full commit log
DREAM3D-NX
- DOC: Update the ReadMe file with up to date information (db838d5a)
- ENH: Create python scripts from the Pipeline View, Bookmarks View, FilterList. (#1092) (2dcf5626)
- ENH: Unified chart navigation across application modules (#1153) (ba242618)
- ENH: Updated clang-format to 19.1.1 (#1154) (f66708c5)
- ENH: Charting multi-series histogram + CDF, Grouped/Overlaid layout, bin-aligned ticks, and split-view fixes (#1143) (7bedd167)
- ENH: Render multi-component arrays in the Visualization volume view (#1140) (39708a84)
- BUG: Fix annotations and scalar bars trapped behind the camera orientation ViewCube (#1150) (034515b4)
- PY: Update EbsdLib to 3.1.0 for conda builds (#1152) (3d4a0723)
- BUG: Fix hidden dock widgets floating instead of docking when shown after a state load (#1148) (0a41d90b)
- BUG: Pipeline will now scroll if a filter is dragged to the top or bottom of pipeline (#1149) (77dba461)
- STY: Update clang-format version to 15 (#1151) (7501d979)
- BUG: Fix QuadView panes showing stale framebuffer before data loads (#1139) (4fe1d419)
- BUG: Fix bar chart series display (incremental series render as lines; legend series names) (#1141) (800d8ba9)
- BUG: Fix chart X-axis number format and None point marker (#1142) (c5eb680e)
- ENH: Add “Clear Data Structure” action to Spreadsheet and Charting modules (#1137) (72751bc3)
- ENH: Serve NXDream3dImportWidget preflight metadata from the preflight cache (#1138) (939f158f)
- BUG: Fix ImportHDF5Dataset widget crash and dimension handling (#1136) (2f947d87)
- ENH: Unify pipeline-results data size limit across display modules (#1129) (88917744)
- ENH: Update web links to point to the new bluequartz.net website (#1131) (37b9b97c)
- BUG: Custom color-range display & robustness fixes across visualization views (#1133) (993cbf2e)
- BUG: Fix Bottom panel becomes hidden and unrecoverable after closing a chart (#1134) (ce5a2b15)
- BUG: Fix .d3dstate loading crash and QuadView state-restore issues (#1130) (266023bc)
- ENH: QuadView ruler & marker annotations (#1127) (a4e505de)
- BUG: Fix EnsembleInfoWidget error on first row added and allow inline editing (#1128) (7b01bbdd)
- ENH: Make visualization items’ visibility hint more obvious (#1117) (4d72ea87)
- BUG: Fix seven long-standing slice-linking bugs in 2D Image/Slice View (#1126) (19d38aa3)
- STY: Light theme updated palette + cross-theme widget fixes (#1124) (507f0b44)
- ENH: Advanced Options for Editing Grid Axis (#1115) (a75d2e92)
- Fix scalar bar range not updating for constant-valued arrays (#1123) (62647883)
- BUG: Fix missing active array update in QuadView’s 3D view stats annotations display (#1120) (a9b28d97)
- DOC: Update typos in URLs pointing to GitHub (#1119) (7bfaebee)
- PY: Update conda build files to use Stb image IO library (#1118) (37e5b886)
- ENH: Rendering performance for VXViewCubeRepresentation (#1116) (3a34d824)
- ENH: Improve the Ruler Tool (#1112) (4da8fbd3)
- BUG: Remove default representations on state file loading (#1114) (4fe8ede8)
- BUG: Fix 2D Image/Slice View link slices physical units feature (#1113) (b50daea7)
- ENH: New QuadView top level visualization module (#1080) (13fe9492)
- ENH: update checks improvements (#1110) (7e2df80d)
- BUG: Fix dock manager leak when re setting layouts or changing themes (#1109) (290054f8)
- COMP: Fix folder naming conflicts in VS solutions (#1111) (46aa0ee8)
- ENH: Allow dropping of files that have multiple file extensions like
.nii.gz(#1108) (b137a819) - ENH: Add Quick Favorites Color Preset bar to the UI. (#1103) (87962895)
- ENH: Update website support links (#1107) (d1c208c6)
- BUG: Release packaging will notarize the MacOS application package. (#1106) (95777d52)
- BUG: Fix 2D Image/Slice view full histograms not getting updated on array change or data reload (#1105) (b4f0e928)
- BUG: Focal point vs Center of rotation interactions (#1104) (3da5c210)
- ENH: Simplify 2D Image Slice View to remove custom OpenGL code & add transform feature (#1032) (98c2edc9)
- ENH: Rewrite ArrayCalculator widget for new expression engine (#1087) (6493e2f3)
- ENH: Update DynamicTableWidget and EnsembleInfoWidget to have adjustable heights (#1100) (d6750c84)
- BUG: Ensure when DREAM3D_ENABLE_UPDATE_CHECK is off, no update check is performed (#1101) (4fc97c2e)
- BUG: Fix transposed footer link URLs in License Dialog (#1102) (785aa5a6)
- ENH: License Dialog Redesign (#1098) (82f68c77)
- ENH: Improved user facing error messages. (#1097) (29c89a40)
- ENH: Update map scalars drop down menu to have more detailed tool tip (#1099) (578c3684)
- VERS: Update to EbsdLib v2.3.0 for builds (#1096) (68ecb9e9)
- ENH: Improve the auto selected default dimensions for multi dimensional spreadsheets (#1094) (facaebac)
- BUG: Fix disabled state of license dialog activation buttons when cancelling from dialog (#1095) (9e1301b7)
- COMP: Refactor Spreadsheet and Charting modules since they do not depend on VTK any more (#1089) (8da7fcb5)
- ENH: Histogram shows values on mouse hover or mouse interaction (#1088) (7a41c14f)
- BUG: Fix max context size context not being current (#1091) (3eaf69c0)
- COMP: Set Version to 7.5.0 (7014bff5)
SIMPLNX
- VV: Read H5OINA Data Fully V&V’ed (#1728) (0f5f08e26)
- VV: Compute Schmids Fully V&V’ed (#1723) (95768c9a8)
- ENH: Convert pipelines to python scripts (#1572) (3151b2590)
- BUG: Fixed stack-use-after-return asan issue with ReadStlFileTest (#1711) (d596f9808)
- BUG: Keep the M3C surface mesh inside the input volume (#1718) (ef275cc66)
- ENH: Add Bounding Box Skin option to the surface meshing filters (#1708) (e8a1fd57f)
- DOC: Update filter documentation with figures and easier to read descriptions (#1589) (d65d859b5)
- COMP: Fix clang implicit conversion warnings in parameter conversion (#1712) (d4b22b384)
- DOC: State final-state behavior in V&V deliverables (#1725) (228c4e9bd)
- ENH: Updated clang-format in ci to 19.1.1 (#1710) (ab55798d4)
- VV: WriteDREAM3DFilter Fully V&V’ed (#1683) (9bcf794e9)
- VV: Multi-Threshold Objects fully V&V’ed (#1688) (467a250d1)
- VV: Erode Dilate Bad Data (#1687) (ea4f1ae20)
- ENH: Harden the binary STL reader against non-conforming files (#1696) (d1accb27b)
- FILT: Add Keep/Remove Ranked Features filter (#1700) (01d9f1106)
- VV: Compute Feature Phases Full V&V (#1672) (bbc470e6d)
- VV: Mark filters ‘COMPLETE’ that have been fully V&V’ed (#1701) (4d20d5696)
- VV: Compute C Axis Locations fully V&V’ed (#1679) (165f8713a)
- VV: Create Feature Array From Element Array Fully V&V’ed (#1695) (fa31947b5)
- VV: Require Minimum Number of Neighbors fully V&V’ed (#1694) (0c8fa9f59)
- VV: ITKImageWriter fully V&V’ed (#1693) (7f31001bf)
- VV: Create Element Array from Feature Array fully V&V’ed (#1689) (2b7f72ca5)
- ENH: Refresh stale filter arguments in example pipelines (#1677) (73bb4c7d3)
- VV: Read Oxford Instr. EBSD Data (.ctf) fully V&V’ed (1d02339d5)
- ENH: Add Use Feature Ids option to ComputeKernelAvgMisorientations (#1674) (a96b48332)
- TEST: Add getBoundingBox regression tests for node geometries and ImageGeom (#1673) (d97e1464b)
- VV: Compute Feature Sizes Full V&V + precision and 2D area fixes (#1638) (8d0b0ed22)
- VV: Segment Features (C-Axis Misalignment) fully V&V’ed (#1685) (025333c60)
- BUG: Fix SIMPL pipeline conversion bugs and Write Image naming (#1682) (5eb69f359)
- BUG: Fix crash when reading geometry embedded in a DataGroup (#1676) (38b1c4e3f)
- VV: Read EDAX EBSD Data (.ang) fully V&V’ed (#1657) (49ea8b09c)
- FILT: Add M3C Multi-Material Marching Cubes surface meshing filter (#1662) (33c26172f)
- ENH: Write Image color table, axis flip, and physical scale bar (#1671) (e9b16329d)
- VV/PERF: Replace Element Attributes With Neighbor Values Complete V&V and Optimizations (#1680) (4fd0abee9)
- FILT: Regularize Z Spacing (#1663) (24e0a29c9)
- VV: ConvertOrientations fully V&V’ed (#1648) (220397029)
- VV: Fill Bad Data Complete VV and minor patches (#1653) (a9d7e17e3)
- ENH: Cache preflight metadata for .dream3d imports (#1668) (cd6229add)
- VV: Rotate Euler Reference Frame fully V&V’ed (#1654) (11a7acdae)
- VV: Compute Feature Neighborhoods Fully V&V’ed + Enhancements (#1652) (d967a166a)
- BUG: Fix ComputeAvgOrientations phase gating + V&V follow-ups (#1664) (bb0cd6545)
- VV: Compute IPF Colors fully V&V’ed (#1666) (ce6b67b5f)
- BUG: Make preflight geometry import metadata-only (#1667) (622404900)
- VV: ComputeFaceIPFColor is completely V&V’ed (#1646) (f5b383be6)
- BUG: Fixed uuid search in vv_init.py (#1669) (8b7cc40f0)
- VV: RotateSampleRefFrame fully V&V’ed + enforce principal-axis 90-degree rotations (#1651) (790d9ca18)
- VV: Neighbor Orientation Correlation fully V&V’ed (#1655) (71526a1f5)
- VV: Compute Feature Centroids full V&V’ed (#1658) (ded8bf33f)
- V&V: WritePoleFigure fully V&V’ed (#1647) (64f5f27cb)
- BUG: Make H5SUPPORT_MUTEX_LOCK a real process-wide HDF5 lock (#1643) (ea101f917)
- DOC: Frame all V&V legacy comparisons as SIMPLNX vs 6.5.171 only (#1656) (08a784714)
- TEST: Add coverage tests for filters flagged by the GCOV report (#1644) (f1abc9edd)
- VV: ComputeAvgOrientations fully V&V’ed (#1645) (4f9bbc378)
- BUG: Fix INodeGeometry0D::getBoundingBox upper-corner initialization (#1649) (a31beeb74)
- DOC: add nikprabhu as a contributor for bug (#1622) (f936706b7)
- BUG: Fix UniversalHermannMauguin dataset parsing in GrainMapper3D reader (#1620) (4485243cc)
- VV: Compute Feature Neighbors fully V&V’ed (#1641) (01c9602b1)
- VV: Identify Sample Full V&V and Minor patches (#1640) (a332e7369)
- VV: ComputeFeatureReferenceCAxisMisorientations fully V&V’ed (#1636) (c225e8a24)
- VV: Group Microtexture Regions fully V&V’ed (#1637) (a5da4e1f0)
- FIX: CompareArrays all-elements check + GBCD double-precision Pi/180 (#1607) (64f6fc32e)
- PERF: Enlarge zlib read buffer in NIfTI reader for NAS performance (#1634) (f8b56d0b6)
- VV: EbsdLib 3.0.0 + V&V of 6 Filters (#1631) (ec22ac375)
- ENH: Compute Feature Face Misorientation Output Rework (#1618) (7cff7f2ea)
- BUG: Fix argument handling in nxrunner (#1627) (b2f17cc1b)
- VV: Compute Feature Reference Misorientations fully V&V’ed (#1629) (99f3a9865)
- ENH: Various small doc, bug and enhancement fixes. (#1626) (e198c1e2a)
- DOC: Add jess-garnett as a contributor for doc (#1621) (2c6be49fd)
- ENH: Parallelize Summation Loops in ComputeFeatureSizes (#1592) (aaad2c4e2)
- DOC: Establish V&V framework — policy, oracle classes, templates (077b1dffe)
- VERS: Updated vcpkg baseline for hwloc windows cmake build (#1624) (e8f2d377b)
- ENH: Added PipelineFilter.update_arg() to update args in place (#1619) (d42b6653b)
- DOC: Update Python Tutorial URLs from old
.pyto new.ipynb(#1614) (87a8188ff) - Updated vcpkg baseline for tbb 2022.3.0 (#1612) (19bb718d8)
- ENH: Enable HDF5 dataset compression from the WriteDREAM3DFilter (#1606) (560529d05)
- ENH: Add Image Reader/Writer that depend on Tiff and Stb libraries. (#1585) (c65c33e1b)
- DOC: Fix documentation & discussion URLs (#1609) (8c8de6583)
- ENH: Standardize 2D Image Handling (#1590) (e76ad508e)
- FILT: Add ReadNIfTIFile filter for NIfTI-1 (.nii / .nii.gz) volumes (#1595) (c055dadf1)
- ENH: Add Multiple Output Types for Sample Surface Mesh Filters (#1591) (5cbf4d46c)
- BUG: Allow uint8 in Mask in InterpolatePointCloudToRegularGrid (#1594) (1af1baddd)
- DOC: Correct typos across documentation (#1603) (d03d7aebc)
- BUG: Fix SIMPL JSON conversion segfault and re-enable backwards-compatibility checks (#1605) (996d7af5a)
- ENH: SIMPL Backwards Compatibility Test Redesign (#1588) (f854bb636)
- ENH: WritePoleFigure filter layout code moved to EbsdLib 2.4.0 (#1587) (9b667ae0b)
- BUG: Fix display of Phase information Ang,Ctf,GrainMapper readers (#1586) (e1fb6e3e6)
- ENH: Rewrite ArrayCalculator filter with new expression engine (#1567) (85491bef3)
- ENH: Compute Avg Orientations now can use von-Mises Fisher or Watson sampling (#1577) (41c079dd2)
- ENH: Support reading of legacy statsgenerator data (#1584) (d6a4b4a4f)
- ENH: Add missing cancel checks to lots of filters (#1582) (1a42ec6fb)
- BUG: Fix RawBinaryReader filter and enhance with more capabilities (2e64bd159)
- ENH: Improve error messages across the codebase (#1576) (f885a0ebc)
- VERS: Update to EbsdLib v2.3.0 for builds (#1579) (e9f16ef1f)
- COMP: Changes to allow the use of a local EbsdLib source directory instead of VCPKG (#1574) (da6faee7f)
- ENH: Additional color presets to support volume rendering presets (#1573) (857bb6aae)
- DOC: Add standardized ChoicesParameter descriptions to filter docs (#1571) (dd58a6cbb)
- BUG/REV: Compute Feature Neighbors (#1569) (9e61b41d4)
- STY: Changed required clang-format to 15 (#1570) (5834e211d)
- STY: Update Clang-Format file with ‘Requires’ clause rules (#1565) (dad810701)