Cocoaアプリで、NSImageViewにフロートの2D配列を表示したいと思います。コードをできるだけ単純にするために、データをfloatからNSDataに変換することから始めます。
// dataArray: an Nx by Ny array of floats
NSMutableData *nsdata = [NSMutableData dataWithCapacity:0];
long numPixels = Nx*Ny;
for (int i = 0; i < numPixels; i++) {
[nsdata appendBytes:&dataArray[i] length:sizeof(float)];
}
次に、データを表示してみます(表示は空白のままです)。
[theNSImageView setImage:[[NSImage alloc] initWithData:nsdata]];
これは正しいアプローチですか?CGContextが最初に必要ですか?私はNSDataでこれを達成したいと思っていました。
以前のStackの投稿に注目しました:32ビットデータ、近いが逆、ほとんど機能しましたが、NSDataはありません、ここにカラー画像データがありますが、これらの機能のバリエーションを得るのはあまり幸運ではありません。提案をありがとう。