この掲示板は AutoCADマクロ屋本舗 の掲示板です。

【 注意 】最初に必ず ↓↓ 下記内容 ↓↓ を参照ください。
① マクロが分からない方は、まず 【 マクロ講座 】 を参照ください。
② 質問の前に 【 マクロ使用前の注意事項 】 をお読みください。
③ 質問する時は、新規投稿フォーム下の【 新規投稿時のお願い 】を必ずお読みください。

ブロックをオフセット
いつも拝見させて頂き大変助かっております。

過去の投稿でブロックを構築線オフセットするマクロがあり使わせてもらっているのですが

http://totthi.bbs.fc2.com/?act=reply&tid=16483959#23652809

構築線でオフセットではなく選択した線分をオフセット出来ないでしょうか?

それとブロックの中のブロックはオフセットすることは可能でしょうか?

宜しくお願い致します。

AutoCAD2014
  • BRUTE
  • 2019/12/31 (Tue) 08:39:25
Re: ブロックをオフセット
自分はこれで対応しています

一辺オフセット=
*^C^C$M=setenv;to;0;$(nth,$(getenv,to),;PCAD;$(getvar,pickadd);pickadd;1;setenv;to;1,,,,,,,)$(nth,$(getenv,to),,_offsetdist;オフセット距離を指定=^X\"""$M=$(if,$(getvar,cmdactive),\setenv;to;2,setenv;to;2)""",,,,,,)$(nth,$(getenv,to),,,_offset;;オブジェクトを選択(再設定は右クリック)^X\$M="""$(if,$(getvar,cmdactive),;setenv;P1;$(getvar,lastpoint);setenv;to;3,setenv;to;1)""",,,,,)$(nth,$(getenv,to),,,,setenv;to;2;select;non;@;non;@;;undo;be;xplode;non;$(getenv,P1);;$M="""$(if,$(getvar,cmdactive),e;,)"""setenv;to;4,,,,)$(nth,$(getenv,to),,,,,re;copybase;non;$(getenv,P1);non;$(getenv,P1);;undo;e;u;setenv;to;5,,,)$(nth,$(getenv,to),,,,,,pasteclip;non;$(getenv,P1);setenv;to;6,,)$(nth,$(getenv,to),,,,,,,offset;;non;$(getenv,P1);\;e;non;$(getenv,P1);;setenv;to;7,)$(nth,$(getenv,to),,,,,,,,pickadd;$(getenv,PCAD);setenv;to;1)^M

>ブロックの中のブロックはオフセットすることは可能でしょうか?
上のマクロではできないので
これで対応しています

指定長さオフセット=
*^C^C_offsetdist;オフセット距離を指定=^X\_line;オフセットする長さの1点目を指定:^X\2点目を指定:^X\;_select;l;;offset;;@;\;erase;p;^M

1.マクロ起動
2.オフセット距離指定
3.オフセットしたい長さを2点指定
(オブジェクトが無くてもできます)
4.オフセット方向を左クリック

終了はESCキーです

  • chibi-tom
  • 2020/01/06 (Mon) 08:00:06
Re: ブロックをオフセット
>ブロックの中のブロックはオフセットすることは可能でしょうか?
分解を繰り返せばできるかもと思い
少しいじっていたらできたみたいです

Lt2021で確認です

一辺オフセット(改)=
*^C^C$M=setenv;to;0;$(nth,$(getenv,to),;PCAD;$(getvar,pickadd);pickadd;1;setenv;to;1,,,,,)$(nth,$(getenv,to),,_offsetdist;オフセット距離を指定=^X\"""$M=$(if,$(getvar,cmdactive),\setenv;to;2,setenv;to;2)""",,,,)$(nth,$(getenv,to),,,_offset;;オブジェクトを選択(R-Clickで再設定)^X\$M="""$(if,$(getvar,cmdactive),;setenv;P1;$(getvar,lastpoint);undo;be;setenv;to;3,setenv;to;1)""",,,)$(nth,$(getenv,to),,,,setenv;to;2;select;non;@;non;@;;xplode;non;$(getenv,P1);;$M="""$(if,$(getvar,cmdactive),e;setenv;to;3,setenv;to;4)""",,)$(nth,$(getenv,to),,,,,regen;copybase;non;$(getenv,P1);non;$(getenv,P1);;undo;e;u;setenv;to;5,)$(nth,$(getenv,to),,,,,,pasteclip;non;$(getenv,P1);offset;;non;$(getenv,P1);\;erase;non;$(getenv,P1);;pickadd;$(getenv,PCAD);setenv;to;1)^M

1.マクロ起動
2.オフセット距離を指定
3.オフセットするオブジェクトを選択(R-Clickで再設定)
4.オフセットする側の点を指定

終了はESCキーです

  • chibi-tom
  • 2020/04/13 (Mon) 16:13:31

返信フォーム






プレビュー (投稿前に内容を確認)