前回、AutoCAD上で、画層を削除しようとすると、

下記のように表示されしまい、

画層を削除することができませんでした。
CAD・CAD・Autocad-画層-削除できません。

原因は、ブロック定義が残っていたためでした。


しかし、なぜ残ってしまっていたのかというと

ブロック定義の画層名が”0”以外だったためでした。


例えば、ブロック定義の画層名が”A”だとすると

画層”A”に、図形オブジェクト等がなくても、

ブロック定義が画層”A”を使っているため削除できません。



どうも、ブロック定義の画層名は”0”でないといけないみたい。

というか、AutoCAD上では必ず”0”になるみたい。

画層”0”は、必ず存在するわけだし・・・。



じゃー、なぜ、ブロック定義の画層名が”0”以外だったのか?



すみません。ガーン

テストで使ったDXFファイルは、AutoCAD以外で保存したものでした。

そのため、ブロック定義の画層名が”0”以外で設定されていました。


こんな感じに・・・

↓ブロック定義の部分を抜粋(AutoCADでないCAD)
━─━─━─━─━─━─━─━─━─━─

0
BLOCK   ←図形タイプ
8
3       ←画層名[本来なら、ココが”0”]
2
円      ←ブロック名

━─━─━─━─━─━─━─━─━─━─


そもそも、AutoCADには、

ブロック定義の画層名を設定するところがない。と思う。汗



このブロック定義の画層名ですが、

VBAから変更できればいいのですが、

残念ながら、そのプロパティはありません。叫び

(なんでないんだ~)


↓AcadBlockオブジェクトの詳細
CAD・CAD・Autocad-ブロック定義:Layerない

Layerプロパティがない!ないんだよ~。

でも、内部では画層の値を持ってる。みたい。



さて、どうやって画層名を変更しようかな?

AutoCADで再登録すると修正してくれるかな?

簡単な方法がいいよなぁ~。


押さなくてもいいよ。おさんくても・・・

にほんブログ村 科学ブログ 技術・工学へ

「みたい。」が、多くてゴメン。今後も使いま~す。