Support for FLOAT32
This commit is contained in:
@@ -60,8 +60,7 @@ void ImageWidget::setImage(RawImage *image)
|
||||
break;
|
||||
case RawImage::FLOAT32:
|
||||
m_image->setData(0, QOpenGLTexture::Red, QOpenGLTexture::Float32, image->data(), m_transferOptions.get());
|
||||
break;
|
||||
default:
|
||||
m_range = 1;
|
||||
break;
|
||||
}
|
||||
m_image->generateMipMaps();
|
||||
|
||||
@@ -167,6 +167,7 @@ bool loadFITS(QString path, ImageInfoData &info, RawImage **image, QImage *qimag
|
||||
std::vector<uint8_t> bits8;
|
||||
std::vector<uint16_t> bits16;
|
||||
std::vector<uint32_t> bits32;
|
||||
std::vector<float> bits32f;
|
||||
long fpixel[3] = {1,1,1};
|
||||
|
||||
size_t size = naxes[0]*naxes[1];
|
||||
@@ -233,6 +234,15 @@ bool loadFITS(QString path, ImageInfoData &info, RawImage **image, QImage *qimag
|
||||
memcpy((*image)->data(), &bits8[0], sizeof(uint32_t)*h*w);
|
||||
}*/
|
||||
break;
|
||||
case FLOAT_IMG:
|
||||
bits32f.resize(size);
|
||||
fits_read_pix(file, TFLOAT, fpixel, size, NULL, &bits32f[0], NULL, &status);
|
||||
if(status)break;
|
||||
if(image)
|
||||
{
|
||||
*image = new RawImage(naxes[0], naxes[1], RawImage::FLOAT32);
|
||||
memcpy((*image)->data(), &bits32f[0], sizeof(float)*h*w);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user