AutoLISPでの楕円の処理、vlaなら主軸と副軸の半径も得られて楽だった。関数名が長いだけでドン引きしてたらダメだ。DXF情報を触るのと違い、substで書き換え→entmodで反映という手間がないのも好き。

最後に描いたオブジェクトの名前の取得方法が分からないので、
(setq Ent (entget (entlast)))
(setq myObj (vlax-ename->vla-object (cdr (assoc -1 Ent))))
という迂遠なやり方なのをなんとかしたい。

フォロー

2行で書いてるのを
(setq myObj (vlax-ename->vla-object (entlast)))
の1行にするだけだった…恥ずかしい……

entlastは「最後に描いたオブジェクトの名前」を指してるのであって、オブジェクトそのものではない、と。メモメモ。

ログインして会話に参加
Fedibird

様々な目的に使える、日本の汎用マストドンサーバーです。安定した利用環境と、多数の独自機能を提供しています。