1、基于新框架实现点击显示光谱;
2、影像拉伸显示优化;
3、右键菜单新增:移除所有栅格图层;
This commit is contained in:
tangchao0503
2026-03-06 17:33:30 +08:00
parent 4ad5c8b91e
commit 09095592af
10 changed files with 310 additions and 104 deletions

View File

@ -36,6 +36,40 @@ bool RasterLayer::openDataProvider()
return ok;
}
bool RasterLayer::isValidPixel(int x, int y)
{
if (!m_provider) {
if (!openDataProvider()) return false;
}
return m_provider->isValidPixel(x, y);
}
bool RasterLayer::readPixelSpectrum(int x, int y, QVector<double>& wavelengths, QVector<double>& spectrum)
{
if (!m_provider) {
if (!openDataProvider()) return false;
}
std::vector<double> wl;
std::vector<double> sp;
if (!m_provider->readPixelSpectrum(x, y, sp)) return false;
wl = m_provider->bandWavelengths();
wavelengths = QVector<double>::fromStdVector(wl);
spectrum = QVector<double>::fromStdVector(sp);
if (wavelengths.size() != spectrum.size()) {
wavelengths.resize(spectrum.size());
for (int i = 0; i < wavelengths.size(); ++i) {
wavelengths[i] = i;
}
}
return true;
}
QImage RasterLayer::render(const RenderParams& params)
{
if (!m_provider) {