alphamap の変更
すべての図には関連付けられている alphamap (0 から 1 の範囲の値からなるベクトル) があります。既定の alphamap は 0 から 1 まで線形に変化する 64 の値を含んでいます。図の Alphamap
プロパティまたは関数 alphamap
を使用して alphamap を表示または変更します。
既定の alphamap
既定の alphamap は次の図に示されるように、0 から 1 まで線形に変化する 64 の値を含んでいます。
am = get(gcf,'Alphamap'); plot(am)
この alphamap は、最も低いアルファ データ値を完全に透明に、最も高いアルファ データ値を不透明に表示します。
alphamap
はいくつかの使用可能で事前定義された alphamap を作成し、既に存在するマップを変更することができます。以下に例を示します。
figure; alphamap('vup')
Figure の Alphamap
プロパティを、値が増加した後減少する alphamap に設定します。
am = get(gcf,'Alphamap');
plot(am)
increase
または decrease
オプションを使用して、値をシフトすることができます。以下に例を示します。
alphamap('increase',.4)
は、現在の Figure の alphamap 内のすべてに値に .4 を付加します。'vup'
を再プロットし、alphamap の変更を示します。これらの値は [0 1] の範囲に固定されています。
am = get(gcf,'Alphamap'); plot(am)
例 — alphamap の変更
次の例は スライス平面 を使用して、ボリューム データを調べるものです。スライス平面はアルファ データ用にカラー データを使用して、1 から 0 の値の範囲で減っていく alphamap を採用しています。
3 変数関数を計算して、ボリューム データを作成します。
[x,y,z] = meshgrid(-1.25:.1:-.25,-2:.2:2,-2:.1:2); v = x.*exp(-x.^2-y.^2-z.^2);
スライス平面を作成し、アルファ データをカラー データに等しい値に設定して、内挿した
FaceColor
とFaceAlpha
を指定します。h = slice(x,y,z,v,[-1 -.75 -.5],[],[0]); set(h,'EdgeColor','none',... 'FaceColor','interp',... 'FaceAlpha','interp') alpha('color')
徐々に減少する alphamap をインストールし、透明度を希望する度数に達するまで、0.1 刻みで alphamap 内の各値を増加させます。カラーマップ
hsv
を指定します。alphamap('rampdown') alphamap('increase',.1) colormap hsv
この alphamap は、関数の最小値 (ゼロ付近) に最小の透明度を、最大値に最大の透明度を使用して表示するものです。これはスライス平面の中を見ることができ、一方、同時にゼロの近傍のデータも保存することになります。