次の例を考えます。これは、積層画像をプロットするために、低レベルSURFACE関数を使用:
%# create stacked images (I am simply repeating the same image 5 times)
img = load('clown');
I = repmat(img.X,[1 1 5]);
cmap = img.map;
%# coordinates
[X,Y] = meshgrid(1:size(I,2), 1:size(I,1));
Z = ones(size(I,1),size(I,2));
%# plot each slice as a texture-mapped surface (stacked along the Z-dimension)
for k=1:size(I,3)
surface('XData',X-0.5, 'YData',Y-0.5, 'ZData',Z.*k, ...
'CData',I(:,:,k), 'CDataMapping','direct', ...
'EdgeColor','none', 'FaceColor','texturemap')
end
colormap(cmap)
view(3), box on, axis tight square
set(gca, 'YDir','reverse', 'ZLim',[0 size(I,3)+1])
Iは、(直接カラーマッピングを用いて)インデックスカラー画像を使用していますが、容易に(スケーリングされたカラーマッピングを用いて)グレースケール画像を使用するように変更することができます。
は今、あなたは、あなたがあなたの質問に示されているように配置された3Dスペースを取得し、単にYとZの寸法(代わりにZ-次元のY次元に沿って積層画像)を交換したい場合。視野角でより多くの制御を持っている一般的に
は、camera manipulation functionsを使用しています。
あなたがその画像を生成するために使用しましたか? – Jacob
Google Sketchup :) – Vidar