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

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

検索語:
OR  AND

Re: 指定したブロックを、複数の線上に一括で配置するマクロ
とってぃ様のマクロ
134.交点指定ブロック挿入を参考に

こんな感じでどうでしょうか?

*^C^C$M=setenv;to;0;$(nth,$(getenv,to),;bl;「ブロック名」;;so;$(getvar,sortents);;to;1,sortents;127;line;nea;\per;\;ucs;ob;l;zoom;@;-10<0;setenv;to;2,,,)$(nth,$(getenv,to),,,lengthen;dy;;;non;0<0;;;setenv;l1;$M="""$(getvar,perimeter);trim;c;non;0<0;non;$(getvar,perimeter)<0;;non;$(-,$(getvar,perimeter),0.1)"""<0;;setenv;to;3,,)$(nth,$(getenv,to),,,,lengthen;dy;;;non;0<0;;;copy;p;;non;@;non;@;erase;p;;setenv;to;4,)$(nth,$(getenv,to),,,,,-insert;$(getenv,bl);s;1;non;$(getenv,l1)<0;0;setenv;to;$M="""$(if,$(=,$(getenv,l1),$(getvar,perimeter)),1;erase;non;0<0;;-insert;$(getenv,bl);s;1;non;0<0;0;ucs;p;zoom;p;sortents;$(getenv,so),2)""")^M

1.最初の線分の任意の点選択
2.最後の線分の任意の点(垂線)選択

以上です。
  • chibi-tom
  • 2018/07/10 (Tue) 19:45:37
Re: 指定したブロックを、複数の線上に一括で配置するマクロ
とってぃ様のマクロ
134.交点指定ブロック挿入を使うとどうなりますか?

仮に交差する線分を作図してから
1.マクロ起動
2.右クリックで2点選択仕様にする
3.最初の交点選択
4.最後の交点選択

これも同じようにエラーが出ますか?
  • chibi-tom
  • 2018/07/11 (Wed) 16:19:20
マクロ作成お願いします。
1. AutoCADのバージョン → AutoCAD LT 2015

2. マクロ作成お願いします。
 
  <作成依頼内容>
  交差する2本の線を、交点から指定の距離で、「横切り」または「縦切り」する。
  交点を選択しただけでその状態になる。
  【指定の距離】は、図面毎に指定したいです。
  【「横切り」または「縦切り」】は、1つのデータ内で、場所により指定したいです。

  ※現在、この作業をするにあたり、下記②点の方法を使用しています。
   ①交点に(指定寸法の半径の)円を置き、縦・横切りたい方向をトリム後、円を消す。
   ②交点で切りたい方向の線を切り(点で部分削除)、長さ変更で指定の寸法減

★前回「文字記入しながらカウントアップ」マクロを作成頂き、非常に助かっております。
 ありがとうございます。
 これに味をしめて、皆様のお力をお借りしたく、投稿させて頂きます。
 よろしくお願い致します。
  • ひらめ
  • 2018/10/04 (Thu) 11:24:04
Re: マクロ作成お願いします。
作ってみました。

選択オブジェクト交点トリム
*^C^C$M=setenv;to;0;$(nth,$(getenv,to),offset;;\;select;non;@;non;@;;setenv;so;$(getvar,sortents);;to;1;sortents;127;copy;p;;non;@;non;@;erase;p;,;to;0;id;int;\circle;non;@;\trim;l;;@;;erase;p;;sortents;$(getenv,so))^M

●使い方
1.トリムするオブジェクト選択
2.交点指定
3.トリム幅記入 繰返し1へ
  • とってぃ
  • 2018/10/04 (Thu) 14:32:28
Re: マクロ作成お願いします。
ごちゃごちゃしたマクロになってしまいましたが、こんなの作ってみました。

*^C^C$M=setenv;to;0;$(nth,$(getenv,to),HYPERLINKBASE;円の半径入力<$(getvar,HYPERLINKBASE)>^X\setenv;to;1,,)$(nth,$(getenv,to),,circle;int;\$(getvar,HYPERLINKBASE);copybase;non;0<0;si;nea;\undo;be;erase;p;;ucs;e;l;;z;non;@;non;0<0;setenv;to;2,)$(nth,$(getenv,to),,,trim;l;;f;$(getvar,HYPERLINKBASE)<88;$(getvar,HYPERLINKBASE)<268;;;erase;p;;ucs;p;;p;pasteclip;non;0<0;undo;e;setenv;to;1)^M

①マクロ実行
②円の半径入力(前回と同じで良いならエンターのみでも可)
③交点クリック
④切らない方の線をクリック

以降③④繰り返し。

半径の情報はHYPERLINKBASEに格納します。
これは図面内に記録される変数なので、図面毎に設定を残せます。

LT2017で作ったのでLT2015だと動くか不安。
  • Lon
  • 2018/10/04 (Thu) 18:01:04