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

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

マクロ作成のお願い
マクロ超初心者です。マクロ屋本舗様で勉強中です。
LT2020です。

いつのこちらのマクロを使用させていただいております。
やりたいことは、ハッチングのパターン、尺度、角度を指定したコマンドの実行です。


こちらで*^C^C$M=setenv;to;0;$(nth,@$(getenv,to),hpname;SLIDO;ray;^X内側の点を指定:【オブジェクト選択(右クリック)】^X\$M="""$(if,$(getvar,cmdactive),;setenv;to;1,setenv;to;2)""",-bhatch;non;@,)$( (nth,$(getenv,to),,,select;\-bhatch;s;p;;;chprop;L;;C;1;)^M
を発見し、編集しようと思いましたが、全く歯が立ちませんでした。

ハッチングパターン「ANSI37]
尺度「20」
角度「45」

描けるようにするにはどうしたらよいでしょうか。
お詳しい方、ご教授お願いいたします。
  • marie
  • MAIL
  • 2021/03/26 (Fri) 15:07:42
Re: マクロ作成のお願い
こういうことでしょうか。

*^C^C$M=setenv;to;0;$(nth,$(getenv,to),hpname;ANSI37;HPSCALE;20;HPANG;45;ray;^X内側の点を指定:【オブジェクト選択(右クリック)】^X\$M="""$(if,$(getvar,cmdactive),;setenv;to;1,setenv;to;2)""",-bhatch;non;@,)$(nth,$(getenv,to),,,select;\-bhatch;s;p;;;)^M

お示しになっているマクロでは、オブジェクト選択でハッチング対象を選ぶ場合、最後に選んだオブジェクトのハッチングだけ色が赤になる仕様になっていたので、それは外しています。
  • LUNE
  • 2021/03/26 (Fri) 15:29:24
Re: マクロ作成のお願い
LUNE様
お返事ありがとうございます!
ありがとうごじざいます。出来ました!!

本当にありがとうございます。
1週間悩みましたが、一瞬で解決していただきました。
これを機に勉強いたしますが、また躓いたときは質問をさせてください。
この度は、私の疑問にお時間をさいてくださり、本当にありがとうございます。

最後に、どのように勉強を進めたらよいか、
方法がございましたらアドバイスを頂けないでしょうか。マクロ屋本舗様のマクロ講座を読んだり、ネットで調べる程度しか実行しておりません。

お手数をお掛けいたしますが、書籍や方法がございましたら、ご教授頂けると嬉しいです。
  • marie
  • MAIL
  • 2021/03/26 (Fri) 15:53:41
Re: マクロ作成のお願い
ちなみに、もう一つお伺いしたのですが
頂いたマクロですと、現在のレイヤーで描かれないようです。

どのようにしたら良いか、ご教授頂けますと嬉しいです。
  • marie
  • MAIL
  • 2021/03/26 (Fri) 16:08:08
Re: マクロ作成のお願い
まず、ハッチングのオプション設定が特定の画層に描く設定になっているのが原因です

1.ハッチングを『必ず現在の画層』で描く場合
*^C^C$M=setenv;to;0;$(nth,$(getenv,to),hpname;ANSI37;HPSCALE;20;HPANG;45;HPLAYER;.;ray;^X内側の点を指定:【オブジェクト選択(右クリック)】^X\$M="""$(if,$(getvar,cmdactive),;setenv;to;1,setenv;to;2)""",-bhatch;non;@,)$(nth,$(getenv,to),,,select;\-bhatch;s;p;;;)^M

『HPLAYER;.;』を追加しています

ただし、この場合はハッチングのオプション設定を現在の画層に描く設定に変更しておくことで
LUNEさんのマクロはそのまま変更する必要は無くなります

※ハッチングのオプション設定の方法はヘルプ等で確認してください

2.『このマクロの時だけ現在の画層』で描きたい場合
*^C^C$M=setenv;to;0;$(nth,$(getenv,to),hpname;ANSI37;HPSCALE;20;HPANG;45;ray;^X内側の点を指定:【オブジェクト選択(右クリック)】^X\$M="""$(if,$(getvar,cmdactive),;setenv;to;1,setenv;to;2)""",-bhatch;non;@;;laycur;l;,)$(nth,$(getenv,to),,,select;\-bhatch;s;p;;;laycur;l;)^M

『;;laycur;l;』を2か所に追加しています
  • chibi-tom
  • 2021/03/26 (Fri) 17:10:57
Re: マクロ作成のお願い
現在の画層にならないのは、今marieさんが操作している図面に、ハッチングを作成する画層が設定されているからです。
ハッチングのリボンで、「プロパティをコピー」を使用しませんでしたか?
設定を現在の画層にするように変更しました。

*^C^C$M=setenv;to;0;$(nth,$(getenv,to),hpname;ANSI37;HPSCALE;20;HPANG;45;HPLAYER;.;ray;^X内側の点を指定:【オブジェクト選択(右クリック)】^X\$M="""$(if,$(getvar,cmdactive),;setenv;to;1,setenv;to;2)""",-bhatch;non;@,)$(nth,$(getenv,to),,,select;\-bhatch;s;p;;;)^M

  • LUNE
  • 2021/03/26 (Fri) 19:26:20
Re: マクロ作成のお願い
chibi-tomさま

ご教授ありがとうございます!!
できました!

すごいです!本当にすごいです。私は頂いたマクロを今は理解できませんが、勉強して解読できるようになりたいです。
お時間をさいてくださり、ありがとうございます。

  • marie
  • 2021/03/27 (Sat) 06:42:08
Re: マクロ作成のお願い
LUNEさま

度々ありがとうございます。
できました!!
そうなんです。プロパティをコピー多用して作業しています。そんなことも分かってしまうんですね...
お時間を割いてご教授くださり、ありがとうございます。

せっかく頂いたマクロを理解することができません。
私も勉強してマクロを作れるようになりたいのですが、勉強方法など宜しければ教えて頂けると嬉しいです。

  • marie
  • 2021/03/27 (Sat) 06:47:56
Re: マクロ作成のお願い
まずはこのHPにある、マクロ講座でしょうか。
そのほか、コマンドラインを注意して見る、コマンドラインだけでコマンドを実行してみるのも勉強になります。
マクロは、基本コマンドラインでできることを並べたものなので。

今回の変更のポイントは、「ハッチングのパターン、尺度、角度」をどう指定するかです。
これらはそれぞれ前回の設定値がシステム変数に保存されるので、それをマクロ内で変更しています。
 パターン→HPNAME
 尺度→HPSCALE
 角度→HPANG
 レイヤー→HPLAYER

ハッチングのリボンにある、プロパティコピーを使うと上記のシステム変数に保存されます。
  • LUNE
  • 2021/03/27 (Sat) 11:23:37
Re: マクロ作成のお願い
LUNEさま

ご返信ありがとうございます。
せっかくご返信いただいたのに、PCを触ることができず確認が遅くなりました。

また、アドバイスいただけて嬉しいです。
ありがとうございます。簡単なものから取り組んでみます!!

また躓いたときはどうかご教授をお願いいたします。

  • marie
  • 2021/03/29 (Mon) 14:39:50

返信フォーム






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