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

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

標高旗揚げ改良
以前「標高旗揚げ」の題で下記のマクロを作っていただきました。
♪標高旗上げ 改T2
*^C^C$M=setenv;to;0;$(nth,$(getenv,to),;hk;基準線の標高を入力^X\;txt;接頭文字記入(無しの場合は半角数値0記入)^X\ucs;ob;\setenv;to;1,ray;non;^X引出し方向をクリック--設定修正(Rc)--^X\$M="""$(if,$(getvar,cmdactive),;line;non;@;^X^X【測定位置をクリック】^X\;erase;l;;setenv;to;2,ucs;p)""",,,,)$(nth,$(getenv,to),,,;to;3;;x1;$(*,$(nth,$(fix,$(/,$(angtos,$(getvar,lastangle),0,8),90)),-,,,-)$(+,0.577350269189,15,$(getvar,dimasz)),$(getvar,dimscale),1),,)$(nth,$(getenv,to),,,,;to;4;;y1;$(*,$(nth,$(fix,$(/,$(angtos,$(getvar,lastangle),0,8),90)),-,-,,)15,$(getvar,dimscale),1),)$(nth,$(getenv,to),,,,,;to;1;leader;non;@;non;@$(getenv,x1)","$(getenv,y1);;$(if,$(eq,$(getenv,txt),0),,$(getenv,txt))$(rtos,$(+,$(getenv,hk),$(*,$(index,1,$(getvar,lastpoint))),0.001),2,3);)^M

すごく重宝しており助かっております。
上記マクロの操作で添付画像のように引出線ではなく文字だけで表示できるよう改良出来ないでしょうか?
よろしくお願いいたします。
  • c-tan
  • 2017/11/05 (Sun) 01:19:57
Re: 標高旗揚げ改良
環境を書くのを忘れていました。
Acad2017レギュラーです。

よろしくお願いいたします。
  • c-tan
  • 2017/11/05 (Sun) 01:22:58
Re: 標高旗揚げ改良
ちょっと仕事が忙しくて
気付くの遅れて申し訳ありません。

お試しください。

♪標高旗上げ 文字のみ
*^C^C$M=setenv;to;0;$(nth,$(getenv,to),;hk;基準線の標高を入力^X\;txt;接頭文字記入(無しの場合は半角数値0記入)^X\ucs;ob;\setenv;to;1,ray;non;^X文字記入位置選択--設定修正(Rc)--^X\$M="""$(if,$(getvar,cmdactive),;setenv;to;2,ucs;p)""",)$(nth,$(getenv,to),,,;to;1;-text;non;@;;;$(if,$(eq,$(getenv,txt),0),,$(getenv,txt))$(rtos,$(+,$(getenv,hk),$(*,$(index,1,$(getvar,lastpoint))),0.001),2,3))^M
  • とってぃ
  • 2017/11/08 (Wed) 14:00:42
Re: 標高旗揚げ改良
とってぃ様 お忙しい中対応していただきありがとうございます。

ほぼ意図したとおりです。あと1点だけ。
説明不足で申し訳ございませんが、標高を表示させたいところをピック出来ますでしょうか?
今はフリーの状態ですので近接線または端点で線分をピック出来たらと思います。

お忙しいと思いますが時間が取れましたらお願い致します。

  • c-tan
  • 2017/11/08 (Wed) 23:52:19
Re: 標高旗揚げ改良
自己レスです。

マクロ講座の「一時Oスナップ」を読んで
[ray;non; X文字記入位置を選択]の部分を[ray;nea; X文字記入位置を選択]に変更したら出来たのですが
これで良かったのでしょうか?

*^C^C$M=setenv;to;0;$(nth,$(getenv,to),;hk;基準線の標高を入力^X\;txt;接頭文字記入(無しの場合は半角数値0記入)^X\ucs;ob;\setenv;to;1,ray;nea;^X文字記入位置選択--設定修正(Rc)--^X\$M="""$(if,$(getvar,cmdactive),;setenv;to;2,ucs;p)""",)$(nth,$(getenv,to),,,;to;1;-text;non;@;;;$(if,$(eq,$(getenv,txt),0),,$(getenv,txt))$(rtos,$(+,$(getenv,hk),$(*,$(index,1,$(getvar,lastpoint))),0.001),2,3))^M

あと最後の方の[$(index,1,$(getvar,lastpoint))),0.001),2,3))^M]部分で
0.001という数字は何か教えていただけませんでしょうか。

よろしくお願いいたします。
  • c-tan
  • 2017/11/09 (Thu) 00:17:30
Re: 標高旗揚げ改良
何か?と問われても分かりませんが

指定したポイントのY座標の値に0.001をかけてるみたいですね。
  • とってぃ
  • 2017/11/09 (Thu) 09:33:34
Re: 標高旗揚げ改良
図面はmm単位で、旗揚げはm単位、そのために1/1000してるとか。
  • LUNE
  • 2017/11/09 (Thu) 11:44:10
Re: 標高旗揚げ改良
とってぃ様、LUNE様 ありがとうございます。

0.001をかけている、つまり1/1000ということですね。

いろいろありがとうございます。
これからもよろしくお願いいたします。
  • c-tan
  • 2017/11/13 (Mon) 00:08:12
Re: 標高旗揚げ改良
お世話になっております。
以前作っていただいた下記の「標高旗揚げ」マクロの引出し長さを少し短くしたいのですが、
どこを改良すればよいかご教授お願い致します。

♪標高旗上げ 改T2
*^C^C$M=setenv;to;0;$(nth,$(getenv,to),;hk;基準線の標高を入力^X\;txt;接頭文字記入(無しの場合は半角数値0記入)^X\ucs;ob;\setenv;to;1,ray;non;^X引出し方向をクリック--設定修正(Rc)--^X\$M="""$(if,$(getvar,cmdactive),;line;non;@;^X^X【測定位置をクリック】^X\;erase;l;;setenv;to;2,ucs;p)""",,,,)$(nth,$(getenv,to),,,;to;3;;x1;$(*,$(nth,$(fix,$(/,$(angtos,$(getvar,lastangle),0,8),90)),-,,,-)$(+,0.577350269189,15,$(getvar,dimasz)),$(getvar,dimscale),1),,)$(nth,$(getenv,to),,,,;to;4;;y1;$(*,$(nth,$(fix,$(/,$(angtos,$(getvar,lastangle),0,8),90)),-,-,,)15,$(getvar,dimscale),1),)$(nth,$(getenv,to),,,,,;to;1;leader;non;@;non;@$(getenv,x1)","$(getenv,y1);;$(if,$(eq,$(getenv,txt),0),,$(getenv,txt))$(rtos,$(+,$(getenv,hk),$(*,$(index,1,$(getvar,lastpoint))),0.001),2,3);)^M

引出し長さは今の半分くらいにしたいと思っております。
よろしくお願いいたします。

こういった改良の質問は新規投稿のほうが良いのでしょうか?
  • c-tan
  • 2017/11/30 (Thu) 08:43:05
Re: 標高旗揚げ改良
マクロ中のX1とY1の計算部分にある数値15→7.5に変更

♪標高旗上げ 改3 (引出し長さ15⇒7.5)
*^C^C$M=setenv;to;0;$(nth,$(getenv,to),;hk;基準線の標高を入力^X\;txt;接頭文字記入(無しの場合は半角数値0記入)^X\ucs;ob;\setenv;to;1,ray;non;^X引出し方向をクリック--設定修正(Rc)--^X\$M="""$(if,$(getvar,cmdactive),;line;non;@;^X^X【測定位置をクリック】^X\;erase;l;;setenv;to;2,ucs;p)""",,,,)$(nth,$(getenv,to),,,;to;3;;x1;$(*,$(nth,$(fix,$(/,$(angtos,$(getvar,lastangle),0,8),90)),-,,,-)$(+,0.577350269189,7.5,$(getvar,dimasz)),$(getvar,dimscale),1),,)$(nth,$(getenv,to),,,,;to;4;;y1;$(*,$(nth,$(fix,$(/,$(angtos,$(getvar,lastangle),0,8),90)),-,-,,)7.5,$(getvar,dimscale),1),)$(nth,$(getenv,to),,,,,;to;1;leader;non;@;non;@$(getenv,x1)","$(getenv,y1);;$(if,$(eq,$(getenv,txt),0),,$(getenv,txt))$(rtos,$(+,$(getenv,hk),$(*,$(index,1,$(getvar,lastpoint))),0.001),2,3);)^M
  • とってぃ
  • 2017/11/30 (Thu) 09:53:03
Re: 標高旗揚げ改良
とってぃ様 早々の対応ありがとうございます。
今まではマクロを実行させてから修正していたので一手間省けて助かります。
ちなみに「0.577350269189」は傾きでしょうか?
参考にこの数値も教えてください。

よろしくお願いいたします。

  • c-tan
  • 2017/11/30 (Thu) 15:03:55
Re: 標高旗揚げ改良
元々ワタシが作ったわけじゃないので分かりません。
職種も違うので・・(^-^;
  • とってぃ
  • 2017/12/01 (Fri) 11:53:17
Re: 標高旗揚げ改良
チャットで製作者のDenさんが教えてくれました。
引出線の角度を60°に設定してるそうです。
でも、構文が間違ってる気がします。(私のcadでは60°にならない)

こう変更すれば、私のLT2017では60°方向に引き出されます。

*^C^C$M=setenv;to;0;$(nth,$(getenv,to),;hk;基準線の標高を入力^X\;txt;接頭文字記入(無しの場合は半角数値0記入)^X\ucs;ob;\setenv;to;1,ray;non;^X引出し方向をクリック--設定修正(Rc)--^X\$M="""$(if,$(getvar,cmdactive),;line;non;@;^X^X【測定位置をクリック】^X\;erase;l;;setenv;to;2,ucs;p)""",,,,)$(nth,$(getenv,to),,,;to;3;;x1;$(*,$(nth,$(fix,$(/,$(angtos,$(getvar,lastangle),0,8),90)),-,,,-)$(+,$(*,0.577350269189,7.5),$(getvar,dimasz)),$(getvar,dimscale),1),,)$(nth,$(getenv,to),,,,;to;4;;y1;$(*,$(nth,$(fix,$(/,$(angtos,$(getvar,lastangle),0,8),90)),-,-,,)7.5,$(getvar,dimscale),1),)$(nth,$(getenv,to),,,,,;to;1;leader;non;@;non;@$(getenv,x1)","$(getenv,y1);;$(if,$(eq,$(getenv,txt),0),,$(getenv,txt))$(rtos,$(+,$(getenv,hk),$(*,$(index,1,$(getvar,lastpoint))),0.001),2,3);)^M
  • Lon
  • 2017/12/01 (Fri) 12:16:16
Re: 標高旗揚げ改良
とってぃ様、Lon様 返事が遅くなりました。

Lon様、教えていただきありがとうございます。
角度の設定値なのですね。構文も変更します。
あ、Den様のページでこの数字のことが書いてありました。見落としていました。
高さの変更も書いてありました・・・

製作者のDen様、ご教授していただいたとってぃ様、Lon様本当にありがとうございます。

  • c-tan
  • 2017/12/04 (Mon) 21:42:51

返信フォーム






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