描画マスク(3)マスクマージャー

描画マスクは、左パネルの下側にあるマスクマネージャーで管理することができます。

 

今回は、背景の写真は、問題ではありません。描画マスクの取り扱いだけを問題にします。

 

写真1は、3つの円の描画マスクが重なっている例です。

 

デフォルトでは、描画マスクが重なると、重なった部分もマスクになります。

 

AのBのマスクが重なった場合の集合演算には写真2のマスクマネージャーのように、次の種類が考えられます。

 

(1)AとBの和集合union(デフォルト)

(2)AとBの積集合intersection

(3)B-A 差集合 difference

(4)和集合ー積集合exclusion

 

(1)から(4)の処理は、2つのマスクの間の演算です。

写真2のように、マスクマネージャーでは、マスク1つに対して、演算を定義します。

つまり、この方法では、マスクの演算を指定している行のマスクが対象になっているのは、わかりますが、もう一つのマスクをどのように指定するのかわかりません。

 

darktableのマスクマネージャーは、指定した行と、その上にある行のマスクに対して演算を行うというルールを採用しています。

 

このとき、一番上の図形だけは、上がないので1つになります。ここで指定できるのは、union(デフォルト)だけになります。

 

写真3では、3番目の図形で、intersectionを選んでいますが、ABCの3つの円の積集合にはなりません。

 

写真4では、2番目の図形でも、intersectionを選んでいます。こうするとABCの3つの円の積集合になります。

 

なお、(4)exclusionは上手くできませんでした。これは、1番目の図形で、union(デフォルト)が選ばれているためと思われます。

実際には、exclusionが必要な場面は稀なので、問題はないと思います。





写真1

 

写真2



 

写真3

 

 

写真4