改变图像显示的rgb波段:

实现界面逻辑,运行有错,没完成
This commit is contained in:
tangchao0503
2026-03-09 17:30:41 +08:00
parent edfb72eaef
commit 0ac03f0eb5
4 changed files with 285 additions and 4 deletions

View File

@ -7,6 +7,8 @@
#include "ui_imgControl.h"
class RasterLayer;
class ImageControl : public QDialog
{
Q_OBJECT
@ -15,9 +17,32 @@ public:
ImageControl(QWidget* parent = nullptr);
~ImageControl();
// Populate controls from a RasterLayer's wavelength info and current render params
void setActiveLayer(RasterLayer* layer);
RasterLayer* activeLayer() const;
public Q_SLOTS:
Q_SIGNALS:
// Emitted when user changes any of the R/G/B wavelength values
void bandSelectionChanged(double rWave, double gWave, double bWave);
private Q_SLOTS:
void onSpinRedChanged(double val);
void onSpinGreenChanged(double val);
void onSpinBlueChanged(double val);
void onSliderRedChanged(int val);
void onSliderGreenChanged(int val);
void onSliderBlueChanged(int val);
void onTrueColorClicked();
void onColorInfraredClicked();
private:
void emitBandChange();
void blockAllSignals(bool block);
Ui::ImageControl ui;
RasterLayer* m_activeLayer = nullptr;
double m_minWave = 374.5;
double m_maxWave = 948.1;
};