TOP PAGE > 記事閲覧
JDrafのポリライン編集はACADと仕様が違う
投稿日 : 2015/10/26(Mon) 10:42
投稿者 アルサポ
参照先
AutoCADとJDrafでは、同じ(?)コマンドなのに仕様(実行結果)が違うものがいくつかあります。
最近、ポリライン編集の仕様が違う事に気付いたので掲載します。

ポリライン編集で出来ることは、両方のCADで同じなのですが、実行後
JDrafでは、「ポリライン」が「2D ポリライン」に強制的に変更されます
AutoCADでは、「ポリライン」は「ポリライン」のままです。

通常作図する「ポリライン」は別名(正式名称?)「軽量ポリライン」といわれ、
データ量が「2D ポリライン」に比べ少ないのに…と個人的にガッカリしています。

それと残念なことにAutoCADの「CONVERT」コマンドがJDrafではありません。
なので、「2D ポリライン」を「ポリライン」に変換する方法がわかりません。
(現時点では、私はどうしても変換したい時には、分解して、ポリライン結合します

いつかJDrafの更新で修正されるか、誰か対処方法をご存じの方は教えて頂きたいと願うばかりです
記事編集 編集
Re: ポリラインの頂点を追加する(lisp)
投稿日 : 2015/10/26(Mon) 10:54
投稿者 アルサポ
参照先
実は、この仕様のおかげで今回紹介するLISPは、AutoCADでは便利に使えますが、
JDrafでは、「ポリライン」の時のみ使えるビミョーなLISPです。

ポリラインの頂点を追加するLISPは、追加したいポリラインを選択し、追加したい頂点位置を指示すると、
その頂点から一番近い頂点の隣に頂点が追加されます。
私は、意外と利用する事が多いので一度使ってみてはどうでしょうか?


;ポリラインの頂点を追加(※JDrafは2Dポリラインに強制的に変換されるので2回連続では使えない)
(defun C:PEditAdd (/ ent ent_data obj pt_add pt n m dis1 dis2 i)
(setq ent (nentsel "\nポリラインを選択"))
(setq ent_data (entget (car ent)))
(setq obj (assoc 0 ent_data))
(if (= (cdr obj) "LWPOLYLINE")
(progn
(setq pt_add (getpoint "\n追加する頂点を指示:"))
(setq pt (assoc 10 ent_data));頂点座標を取得
(setq n 0)
(setq m 0)
(setq dis1 (distance pt_add (cdr pt)))
(while pt
(setq dis2 (distance pt_add (cdr pt)));2点間距離
(if (> dis1 dis2)
(progn
(setq dis1 dis2)
(setq m n)
);progn
);if
(setq ent_data (cdr (member pt ent_data)))
(setq pt (assoc 10 ent_data));頂点座標を取得
(setq n (+ n 1))
);while
(command "PEDIT" ent "E")
(if (/= m 1)
(progn
(setq i 0)
(while (> m i)
(command "N")
(setq i (+ i 1))
);while
);progn
);if
(command "I" pt_add "X" "")
);progn
);if
(princ)
)
記事編集 編集
Re: JDrafのポリライン編集はACADと仕様が違う
投稿日 : 2016/10/06(Thu) 17:55
投稿者 良春
参照先
こんにちわ
最近JDrafをさわり出したものです。
上のLISPでLWPOLYLINEが2DPOLYLINEに変わってしまうのは PEDIT のせいのようです。
JDrafでは2DPOLYLINE用の編集コマンド EDITPOLYLINE と LWPOLYLINE 用の編集
コマンド EDITVERTEX があり、別名で PEDIT がEDITPOLYLINE になっていました。
LWPOLYLINE をEDITPOLYLINE で編集すると強制的に2DPOLYLINEになる仕様のようです。
上のLISPを EDITVERTEX に書き換えると、解決します。
記事編集 編集
Re: JDrafのポリライン編集はACADと仕様が違う
投稿日 : 2016/10/09(Sun) 09:47
投稿者 アルサポ
参照先
良春さん、ご指摘ありがとうございます
「EDITVERTEX」を使うと問題が解決しました

「EDITVERTEX」が軽量ポリラインの編集コマンドだったなんて知りませんでした!!
ヘルプのリファレンスには、2Dポリラインの編集のような事が書いてあったような

良春さんにお聞きしたいのですが、
私の場合はAutoCADを使っていたので、主にAutoCADのコマンドをもとにJDrafについて勉強しているのですが、
今回のようなメニューにないコマンド(JDrafのコマンド)は、どのようにしてご存知になったのですか?
もし、JDrafについて参考にしているHPや書籍等あれば教えて頂ければ幸いです
記事編集 編集
Re: JDrafのポリライン編集はACADと仕様が違う
投稿日 : 2016/10/09(Sun) 10:30
投稿者 良春
参照先
アルサポさん おはようございます。
私もAutoCADユーザーです。R2010で更新をやめています。
JDrafへの移行を検討中で、いろいろ検索してこちらへたどり着きました。
冒頭のLWPOLYLINEが2DPOLYLINEに変るという指摘に、実際確認して不便に
感じ、何か代替があるのではないかと考え、コマン解説を総当たりして
発見しました。
私も自作のLISPをJDrafに移行し、動作検証しながら環境づくりをしています。
JDrfはDISELがあまりうまく動かないので、LISPで作りなおしたりしている
過程で、AutoCADとの違いを実感しています。
たとえば引き出し線記入で仮文字を入力し、後から文字をGETVERの値に入れ替える場合、
AutoCADでは最後のエンティティは「文字」ですが、JDrafでは「引き出し線」になるので
結構手間になります。
他にもまだわからないことだらけですが、まだメインはAutoCADなので結構、移行を
楽しんでいます。
今後ともよろしくお願いいたします
記事編集 編集
ページの上に移動
件名 スレッドをトップへソート
名前
メールアドレス
URL
暗証キー
画像認証 (右画像の数字を入力) 投稿キー
コメント


- WEB PATIO -