jfjoch_viewer: ROI can be configured more flexibly
This commit is contained in:
55
viewer/JFJochViewerImageROIStatistics_Circle.cpp
Normal file
55
viewer/JFJochViewerImageROIStatistics_Circle.cpp
Normal file
@@ -0,0 +1,55 @@
|
||||
// SPDX-FileCopyrightText: 2025 Filip Leonarski, Paul Scherrer Institute <filip.leonarski@psi.ch>
|
||||
// SPDX-License-Identifier: GPL-3.0-only
|
||||
|
||||
#include <QHBoxLayout>
|
||||
#include <QLabel>
|
||||
|
||||
#include "JFJochViewerImageROIStatistics_Circle.h"
|
||||
|
||||
JFJochViewerImageROIStatistics_Circle::JFJochViewerImageROIStatistics_Circle(QWidget *parent)
|
||||
:QWidget(parent) {
|
||||
auto layout = new QHBoxLayout(this);
|
||||
|
||||
setFixedWidth(300);
|
||||
|
||||
layout->addWidget(new QLabel("x: "));
|
||||
x = new NumberLineEdit(0, 10000, 0, 1, "", this);
|
||||
layout->addWidget(x);
|
||||
|
||||
layout->addWidget(new QLabel(" y: "));
|
||||
y = new NumberLineEdit(0, 10000, 0, 1, "", this);
|
||||
layout->addWidget(y);
|
||||
|
||||
|
||||
layout->addWidget(new QLabel(" r: "));
|
||||
r = new NumberLineEdit(0, 10000, 0, 1, "", this);
|
||||
layout->addWidget(r);
|
||||
|
||||
connect(x, &NumberLineEdit::newValue, [this] (float) {emit Updated();});
|
||||
connect(y, &NumberLineEdit::newValue, [this] (float) {emit Updated();});
|
||||
connect(r, &NumberLineEdit::newValue, [this] (float) {emit Updated();});
|
||||
}
|
||||
|
||||
void JFJochViewerImageROIStatistics_Circle::SetROICircle(const CircleSettings& input) {
|
||||
Enable();
|
||||
x->setValue(input.x);
|
||||
y->setValue(input.y);
|
||||
r->setValue(input.r);
|
||||
}
|
||||
|
||||
void JFJochViewerImageROIStatistics_Circle::Disable() {
|
||||
x->setEnabled(false);
|
||||
y->setEnabled(false);
|
||||
r->setEnabled(false);
|
||||
}
|
||||
|
||||
void JFJochViewerImageROIStatistics_Circle::Enable() {
|
||||
x->setEnabled(true);
|
||||
y->setEnabled(true);
|
||||
r->setEnabled(true);
|
||||
}
|
||||
|
||||
CircleSettings JFJochViewerImageROIStatistics_Circle::GetROICircle() {
|
||||
return CircleSettings{.x = x->value(), .y = y->value(), .r = r->value()};
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user