SVG コンポジション標準 (2009 年、https://www.w3.org/TR/2009/WD-SVGCompositing-20090430/ ) から 24 のメソッドのほとんどを Matlab に移植しましたが、4 つのメソッド (色覆い焼きなど) が中継されます。 if ステートメント内で画像を比較する (例: if Sca == Sa && Dca == 0 ...) が、Matlab はこれを非スカラー演算子と見なします。
Sc、Dc は RGB イメージです。Sa、Da はアルファ チャネルを表すグレー マスクです。Dca、Sca は乗算済みのイメージです。Dca = Dc .* Da; Sca = Sc .* Sa;
if strcmp(compo_meth, 'color-dodge') == 1;
if Sca == Sa && Dca == 0
Dca = (1 - Da) .* Sca;
elseif Sca == Sa
Dca = Sa .* Da + (1 - Da) .* Sca + (1 - Sa) .* Dca;
elseif Sca < Sa
Dca = Sa .* Da .* min(1, Dca/Da .* Sa/(Sa - Sca));
end
Da = Sa + Da - Sa .* Da;
end
Sca == Sa && Dca == 0 の場合のエラー
|| へのオペランド および && 演算子は、論理スカラー値に変換可能でなければなりません