Build Packages / build:rpm (ubuntu2404_nocuda) (push) Successful in 9m34s
Build Packages / build:rpm (ubuntu2204_nocuda) (push) Successful in 11m54s
Build Packages / build:rpm (rocky8_nocuda) (push) Successful in 12m17s
Build Packages / build:rpm (rocky8_sls9) (push) Successful in 13m4s
Build Packages / build:rpm (rocky8) (push) Successful in 13m8s
Build Packages / build:rpm (rocky9_nocuda) (push) Successful in 13m31s
Build Packages / build:rpm (rocky9_sls9) (push) Successful in 14m6s
Build Packages / build:rpm (rocky9) (push) Successful in 12m39s
Build Packages / build:rpm (ubuntu2404) (push) Successful in 10m7s
Build Packages / XDS test (durin plugin) (push) Successful in 9m11s
Build Packages / Create release (push) Skipped
Build Packages / build:rpm (ubuntu2204) (push) Successful in 10m37s
Build Packages / Generate python client (push) Successful in 17s
Build Packages / XDS test (neggia plugin) (push) Successful in 8m24s
Build Packages / XDS test (JFJoch plugin) (push) Successful in 9m16s
Build Packages / Build documentation (push) Successful in 36s
Build Packages / DIALS test (push) Successful in 11m54s
Build Packages / Unit tests (push) Successful in 57m16s
36 lines
1.1 KiB
C++
36 lines
1.1 KiB
C++
// SPDX-FileCopyrightText: 2026 Filip Leonarski, Paul Scherrer Institute <filip.leonarski@psi.ch>
|
|
// SPDX-License-Identifier: GPL-3.0-only
|
|
|
|
#include "JFJochMagnifierWindow.h"
|
|
#include "../image_viewer/JFJochSimpleImage.h"
|
|
#include "../SimpleImage.h"
|
|
|
|
#include <QTransform>
|
|
|
|
JFJochMagnifierWindow::JFJochMagnifierWindow(QWidget *parent)
|
|
: JFJochHelperWindow(parent) {
|
|
setWindowTitle("Magnifier");
|
|
m_image = new JFJochSimpleImage(this);
|
|
setCentralWidget(m_image);
|
|
resize(320, 320);
|
|
}
|
|
|
|
void JFJochMagnifierWindow::imageLoaded(std::shared_ptr<const JFJochReaderImage> image) {
|
|
if (!image) {
|
|
m_have_image = false;
|
|
m_image->setImage(nullptr);
|
|
return;
|
|
}
|
|
const auto &exp = image->Dataset().experiment;
|
|
auto si = std::make_shared<SimpleImage>();
|
|
si->image = CompressedImage(image->Image(), exp.GetXPixelsNum(), exp.GetYPixelsNum());
|
|
m_image->setImage(si);
|
|
m_have_image = true;
|
|
}
|
|
|
|
void JFJochMagnifierWindow::centerAt(QPointF scenePos) {
|
|
if (!m_have_image || !isVisible())
|
|
return;
|
|
m_image->applyViewport(QTransform::fromScale(m_magnification, m_magnification), scenePos);
|
|
}
|