LEYDELコマンドを使って「補助線」(=構築線ですね)を全削除するマクロを書いてボタンに割り振っていたのですが、最近、それを使うとフリーズするようになってしまいまして。
メモリ使用量がどんどん増えていって、ほぼ100%状態になって、帰ってこないのです。。。
最初、なんでフリーズするのか分からなかったのですが、色々検証した結果、これがトリガーであるところまでは解明できました。
マクロが悪いのかと思ったのですが、コマンド直打ちでLAYDELコマンドを使ってもなるので、マクロは白ですね。
毎回なるわけではなく。
構築線以外のオブジェクトがある画層をLAYDELで消しても異常なく。
構築線がある画層で毎回そうなるわけでなく。
特定の構築線がある時に発生するようなのです。
その、問題が起きる構築線を手動で削除すると、それ以降はまた正常に動くようになる。
問題の構築線と、問題が起きない構築線の違いをいくら見比べてみても、違いは不明で。
最終的な結論としては、LAYDELのバグなんじゃないかと。何らかの条件下で発生しているのは間違いないのですが、その条件が特定し切れないのですよね。。。
問題が起きる構築線だけ残して、他のオブジェクトを全て削除すると、問題が起きなくなります。
構築線以外のオブジェクトを消しながら確認してみたとこ、現時点では、ある外部参照図を削除すると起きなくなるのは判明したのですが、あっても問題が起きない外部参照図もあり。また、問題の構築線を手動で削除してしまえば、それ以降は外部参照図があっても問題なく動作する。。。
結論としては、LAYDELで構築線を消す事を諦めるという解決策しか今のところない状態でして。
困ってしまいます。
画層をすべてフリーズまたはロックして、ERASEを使って消せば同じ事は実現できるのですが、これだと、モデル空間の構築戦をレイアウト側から消せないのですよね。LAYDELならモデル空間でもペーパー空間でもバッサリ削除できてしまうので便利だったのですが。。。
とりあえず、ERASEを使ったマクロにボタンの内容を書き換えて使いますが。
いまのところはこんな感じにしてみました。
※構築線が「hojo」という画層に描かれているとして
画層状態保存→全画層ロック→補助線画層ロック解除→イレースALL→画層状態復元→画層状態削除
^C^C-layer;a;s;TempList;;;;_graphscr;-layer;s;hojo;LO;*;U;hojo;;_erase;all;;-layer;a;r;TempList;d;TempList;;^C
バグだったら修正される日がくるのだろうか・・・
コメント