前の質問のように、ボリューム データセットの .raw ファイルをバイト配列にロードすることに関心があります。3D バイト配列を使用すると、X、Y、Z 座標にインデックスを付けるときに作業が簡単になると思いますが、ボリュームをロードするために使用する必要がある読み取りサイズについてはわかりません。このサイズ宣言により、ボリューム データに正しくインデックスを付けることができますか?
int XDIM=256, YDIM=256, ZDIM=256;
const int size = XDIM*YDIM*ZDIM;
bool LoadVolumeFromFile(const char* fileName) {
FILE *pFile = fopen(fileName,"rb");
if(NULL == pFile) {
return false;
}
GLubyte* pVolume=new GLubyte[XDIM][YDIM][ZDIM];
fread(pVolume,sizeof(GLubyte),size,pFile); // <-is this size ok?
fclose(pFile);