「note」に引っ越し中です。移動したページごとに移動先へのリンクを作っていく予定です。

Inkscapeのパスエフェクト:ブーリアン操作

 このページでは、Inkscapeのパスエフェクトの1つである、Inkscapeの基本機能としてパスメニューから実行可能な2つのパス同士をくっつけたりバラしたりする操作(ブーリアン操作)のパスエフェクト版を紹介します。

 パスメニューから実行可能な操作とほぼ同様の操作が可能ですが、パスエフェクトなので適用後にも2つのパスをそれぞれ編集することが可能です。

 (参考:パスをつなぎ合わせる/切り離す

 (参考:パスエフェクト/エクステンションとは

(2023.03.15更新)

パスエフェクトダイアログでは・・・

 ブーリアン操作のパラメータを設定するためのダイアログは次のようになっています。

 操作というラベルのプルダウンメニューで、実行する操作の種類を選びます。

 すると、操作対象のパス(パスその1)に対して、操作用のパス(パスその2)を使った「交差」や「差分」などの操作を行った結果が表示されます。パスエフェクトなのでデータとして「交差」や「差分」が行われた結果を記憶するのではなく、パスその1を表示したときの見た目が「交差」や「差分」を実行したものになります。パスその2はそのままオブジェクトとして存在し続けますが、ブーリアン操作を行った結果の見た目になるように自動的にフィルタがかけられたりします(例えば見えなくなったりします)。

基本的な手順

 ブーリアン操作では(少しわかりにくい手順ですが)次のような手順でエフェクトを設定します。

  1. パスその1を選択する。
  2. エフェクトダイアログ上で「+」ボタンを押して、ブーリアン操作を適用する。ブーリアン操作のパラメータ指定画面が表示される。
  3. パスその2を選択する。(エフェクトダイアログ上は適用済みエフェクトが1つも無い空っぽの表示になる)
  4. パスその2をクリップボードにコピーする。
  5. パスその1を再び選択して、エフェクトダイアログ上にブーリアン操作のパラメータ指定画面を再び表示させる。
  6. そのパラメータ指定画面にあるアイテムへリンクボタン(紙を挟むクリップボードのアイコン)を押す。すると、パスその1に対してパスその2を使った操作(たとえば「差分」)が実行され、その結果に表示が切り替わる。

 パスその2の指定をキャンバス上ではなくクリップボードを通して行うので、なんだかわかりにくいと感じます。

エフェクト適用後の編集

 パスメニューから実行するブーリアン操作(パスエフェクトではないほう)は操作対象のパスのほうをデータとして直接変換してしまうので、例えば「差分」を実行した後で「差分」によって欠けた部分の形を変えたくても、「差分」適用後の複雑なパスに対して編集操作を行うか、または、元に戻す(Undo)操作をして実行前の2つのパスオブジェクトが存在する状態に戻してからパスを変形してもう一度同じブーリアン操作を行う必要があります。

 それに対してこのパスエフェクト版では、パスその1パスその2もデータとしてそのまま残っているので、それぞれ独立に選択して編集することで、例えば「差分」によって欠けた部分の形を後から変更することができます。

 次の例では、矩形を操作対象(パスその1)にして、楕円を操作用(パスその2)にして「差分」を実行したもの(真ん中)ですが、楕円のほうを選択して移動したり変形したりすると「差分」を適用した結果のほうもそれに合わせて(右の例のように)変化します。

その他のパラメータ

操作を入れ替え:操作対象(パスその1)と操作用(パスその2)を入れ替えます。

このパスのフィルタイプ:ブーリアン操作を行うときはそのパスのフィルがどの領域なのかが重要です。このパラメータは操作対象パスの塗りつぶしルール(つまりフィルがどこなのか)を指定します。オブジェクトから取得を選ぶと操作対象のパスの塗りつぶしルールをそのまま使います。(参考:パスの塗りつぶしのルール

操作パスのフィルタイプ:操作用のパス(パスその2)についても塗りつぶしルールを指定します。