1999/ 8/ 8


ブロック定義と挿入時のレイヤー

ブロックの定義は、通常0(ゼロ)レイヤーで、線種と色はBYBLOCKでするようにと書かれています。
0レイヤーというのは、どうも特殊なレイヤーなようで、私もその全貌は把握していませんが、ブロックと深い関係があることは確かなようです。
ブロックの定義は、0レイヤー以外でもできます。
今回、下表のように、色々と条件を変えて、試してみましたので御報告します。

まず、ブロックの定義は、0レイヤーと、画層Greenという名前の、色を緑に設定したレイヤーの2つで行いました。
ブロックの定義時に、それぞれ色をBYBLOCK,BYLAYER,赤の3通りに変えてみます。
合計で6つのブロックが定義されます。

挿入先のレイヤーは、画層Cyanという色をシアンに設定したレイヤーにしました。
挿入時の現在層も、色をBYBLOCK,BYLAYER,青の3通りに変えてみます。

ブロック定義時
挿入先(画層Cyan)での表示のされ方
(画層の色:シアン)
レイヤー
BYBLOCKで挿入
BYLAYERで挿入
青にして挿入
0
(色=黒/白)
BYBLOCK
BYLAYER
画層Green
(色=緑)
BYBLOCK
BYLAYER

この実験で分かることは、まず、挿入時の現在層の色を反映したければ、ブロックはBYBLOCKで作ると良いということです。
また、ブロック定義時に色を変えた場合、挿入してからもその色が優先されます。

挿入したインスタンスを分解すると、ブロック作成時のレイヤーと色に戻ります。
分解する予定のあるブロックは、そのことを考慮しておくと良いでしょう。
本来ブロックは分解するものではないのですが、分解しなければ修正できないのがAutoCADです。

さて、BYBLOCKでブロックを作った場合、定義時の画層が何であれ、挿入後の状態は同じであるかのように見えます。
ところが、ここでインスタンスの挿入先である画層Cyanを非表示にしてみると、その違いが分かります。
ブロックを0レイヤーで作ったインスタンスは非表示になりますが、画層Greenでブロックを作った物は、表示されたままです。
これを非表示にするには、画層Greenを非表示にする必要があります。


(C) Yoshiyuki Inaba 1999

目 次 | Home | E-mail