v1.0.0-rc.103 (#8)
All checks were successful
Build Packages / build:rpm (rocky8_nocuda) (push) Successful in 7m51s
Build Packages / build:rpm (ubuntu2404_nocuda) (push) Successful in 7m19s
Build Packages / build:rpm (ubuntu2204_nocuda) (push) Successful in 7m46s
Build Packages / build:rpm (rocky9_nocuda) (push) Successful in 8m32s
Build Packages / build:rpm (rocky8_sls9) (push) Successful in 8m6s
Build Packages / build:rpm (rocky8) (push) Successful in 8m7s
Build Packages / build:rpm (ubuntu2204) (push) Successful in 7m37s
Build Packages / Generate python client (push) Successful in 17s
Build Packages / Create release (push) Has been skipped
Build Packages / Build documentation (push) Successful in 32s
Build Packages / build:rpm (rocky9) (push) Successful in 9m6s
Build Packages / build:rpm (ubuntu2404) (push) Successful in 6m53s
Build Packages / Unit tests (push) Successful in 1h9m39s

This is an UNSTABLE release.

* jfjoch_viewer: Minor improvements to the viewer
* jfjoch_broker: Change behavior for modular detectors: coordinates of 0-th pixel can be now arbitrary and detector will be cropped to the smallest rectangle limited by module coordinates

Reviewed-on: #8
Co-authored-by: Filip Leonarski <filip.leonarski@psi.ch>
Co-committed-by: Filip Leonarski <filip.leonarski@psi.ch>
This commit was merged in pull request #8.
This commit is contained in:
2025-11-19 09:40:50 +01:00
committed by leonarski_f
parent 5c38b2bfe8
commit 33aeb64e4c
158 changed files with 475 additions and 335 deletions

View File

@@ -146,6 +146,9 @@ void JFJochDiffractionImage::DrawPredictions() {
}
void JFJochDiffractionImage::DrawResolutionRings() {
if (ring_mode == RingMode::None)
return;
// Get the visible area in the scene coordinates
QRectF visibleRect = mapToScene(viewport()->geometry()).boundingRect();
@@ -159,7 +162,8 @@ void JFJochDiffractionImage::DrawResolutionRings() {
auto geom = image->Dataset().experiment.GetDiffractionGeometry();
geom.PoniRot3_rad(0.0);
if (res_ring_auto) {
if (ring_mode == RingMode::Auto) {
float radius_x_0 = geom.GetBeamX_pxl() - startX;
float radius_x_1 = endX - geom.GetBeamX_pxl();
@@ -183,8 +187,16 @@ void JFJochDiffractionImage::DrawResolutionRings() {
};
else
res_ring = {};
} else if (ring_mode == RingMode::Estimation) {
if (image && image->ImageData().resolution_estimate)
res_ring = {*image->ImageData().resolution_estimate};
else
res_ring = {};
}
if (res_ring.empty())
return;
QPen pen(feature_color, 5);
pen.setCosmetic(true);
@@ -278,7 +290,6 @@ void JFJochDiffractionImage::addCustomOverlay() {
DrawSpots();
if (show_predictions)
DrawPredictions();
if (show_saturation)
DrawSaturation();
}
@@ -316,12 +327,7 @@ void JFJochDiffractionImage::setAutoForeground(bool input) {
void JFJochDiffractionImage::setResolutionRing(QVector<float> v) {
res_ring = v;
res_ring_auto = false;
updateOverlay();
}
void JFJochDiffractionImage::setResolutionRingAuto() {
res_ring_auto = true;
ring_mode = RingMode::Manual;
updateOverlay();
}
@@ -385,3 +391,8 @@ void JFJochDiffractionImage::changeForeground(float val) {
emit autoForegroundChanged(false);
JFJochImage::changeForeground(val);
}
void JFJochDiffractionImage::setResolutionRingMode(RingMode mode) {
ring_mode = mode;
updateOverlay();
}