完成功能:改变图像显示的rgb波段;
1、可改变图像显示波段,当修改完成参数时实时刷新图像; 2、TOC中切换选中的多图层时,刷新渲染信息; 3、界面中保存图像的波长信息,参数修改时的选项就是准确的波长信息;
This commit is contained in:
@ -4,6 +4,7 @@
|
||||
#include <QNetworkRequest>
|
||||
#include <QNetworkReply>
|
||||
#include <QNetworkAccessManager>
|
||||
#include <vector>
|
||||
|
||||
#include "ui_imgControl.h"
|
||||
|
||||
@ -28,12 +29,26 @@ Q_SIGNALS:
|
||||
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);
|
||||
// Sync slider position while dragging spinbox (no render)
|
||||
void onSpinRedValueChanged(double val);
|
||||
void onSpinGreenValueChanged(double val);
|
||||
void onSpinBlueValueChanged(double val);
|
||||
|
||||
// Sync spinbox display while dragging slider (no render)
|
||||
void onSliderRedValueChanged(int val);
|
||||
void onSliderGreenValueChanged(int val);
|
||||
void onSliderBlueValueChanged(int val);
|
||||
|
||||
// Commit: spinbox Enter key pressed / focus lost
|
||||
void onSpinRedEditingFinished();
|
||||
void onSpinGreenEditingFinished();
|
||||
void onSpinBlueEditingFinished();
|
||||
|
||||
// Commit: slider mouse released
|
||||
void onSliderRedReleased();
|
||||
void onSliderGreenReleased();
|
||||
void onSliderBlueReleased();
|
||||
|
||||
void onTrueColorClicked();
|
||||
void onColorInfraredClicked();
|
||||
|
||||
@ -41,8 +56,14 @@ private:
|
||||
void emitBandChange();
|
||||
void blockAllSignals(bool block);
|
||||
|
||||
// Find the band index whose wavelength is closest to the given value
|
||||
int nearestBandIndex(double wave) const;
|
||||
// Set spinbox and slider to wavelength of the given band index
|
||||
void setControlsToBandIndex(QDoubleSpinBox* spin, QSlider* slider, int idx);
|
||||
|
||||
Ui::ImageControl ui;
|
||||
RasterLayer* m_activeLayer = nullptr;
|
||||
double m_minWave = 374.5;
|
||||
double m_maxWave = 948.1;
|
||||
std::vector<double> m_wavelengths; // band wavelengths from header
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user