Подскажите, пожалуйста, что я делаю не так. Есть код на С++:
int nVolIdx = pImageData->FindPoint(ptMapped);
unsigned short* pPix = (unsigned short*)pImageData->GetScalarPointer();
unsigned short usPix = pPix[nVolIdx];
На C# я переделал вот так:
int nVolIdx = pImageData.FindPoint(ptMapped);
IntPtr pPix = pImageData.GetScalarPointer();
int usPix = Marshal.ReadInt32(pPix, nVolIdx);
Но значения usPix не сходятся. Пробовал сделать преобразование в Int16, но все равно не то
Блин сам разобрался, Offset надо было еще умножить на размер скаляра