ENH: Add complete pole figure generation#42
Merged
imikejackson merged 8 commits intoBlueQuartzSoftware:developfrom Apr 9, 2026
Merged
ENH: Add complete pole figure generation#42imikejackson merged 8 commits intoBlueQuartzSoftware:developfrom
imikejackson merged 8 commits intoBlueQuartzSoftware:developfrom
Conversation
df141c2 to
9b9c17a
Compare
…ration Introduces the PoleFigureCompositor class with all required types (CompositePoleFigureConfiguration_t, CompositePoleFigureResult, LayoutMetrics, PoleFigureLayoutType) and stub method bodies. Registers the new .h and .cpp in SourceList.cmake so EbsdLib builds them automatically. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- Create PoleFigureCompositorTest.cpp with 4 test cases covering ConfigDefaults, Horizontal, Vertical, and Square layout metrics - Add test file to Source/Test/CMakeLists.txt - Implement computeLayoutMetrics in PoleFigureCompositor.cpp with font-measured xCharWidth for accurate subCanvasWidth, and correct page dimensions and figure origins for all three layout types Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
… canvas composition Fill in all remaining stub methods in PoleFigureCompositor: generatePoleFigures, preprocessImages, flipAndMirror, convertColorOrder, drawPoleFigure, drawScalarBar, drawInfoBlock, drawTitle, compositeToCanvas, and generateCompositeImage. Add fmt::fmt link dependency to EbsdLib. Add 3 end-to-end tests covering horizontal/discrete/all layout modes. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
…ale propagation - Use ebsdlib::constants::k_2PiF instead of inline 2*pi for arc drawing - Match SIMPLNX ColorTable static_cast<float> pattern for float consistency - Fix font accessor functions to not re-decode base64 on every call - Propagate minScale/maxScale from LaueOps back through generateCompositeImage - Change generateCompositeImage to take non-const config reference Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
The sub-canvas width now includes an additional margin between the pole figure image and the X axis label, preventing the label from being cut off at the right edge, particularly visible in Square layout. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
…Figures Exemplars added for discrete pole figures.
9b9c17a to
d6f889b
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Add utility to compose together 3 pole figures and optional legend into a single image.