当掲示板は、AuroCADマクロ屋本舗 の掲示板です。
AutoCADのマクロ に関する質問の前に 【 マクロ使用前の注意事項 】 を、必ずお読みください。

尚、新規投稿フォーム下の【 新規投稿時のお願い 】を確認の上、新規投稿をお願い致します。
円弧寸法について
下のほうにある円弧寸法についての物を使おうと思ったのですが、画像のようなものが連続で引けたらと思い、投稿させていただきました。
(使わせていただいてたもののマクロ:^C^Corthomode;0;arc;\nea;\\lengthen;last;dy;;$M=draworder;last;;f;dimangular;@;t;$(rtos,$(/,$(getvar,perimeter),1),2,0);\erase;p;;)

よろしくお願いいたします。
  • あんぱん
  • 2016/11/15 (Tue) 16:06:07
Re: 円弧寸法について
少しイメージとは違いますが作ってみました。
お試しください。

♪円弧 角度&長さ記入 試作
*^C^Coffset;;\;select;non;@;non;@;;copy;p;;non;@;non;@;erase;p;;lengthen;dy;;;l;;DIMANGULAR;nea;@;\cmddia;0;dim1;new;<>(L=$M=$(rtos,$(/,$(getvar,perimeter),1),2,1));l;;cmddia;1^M

LT2013動作確認
  • とってぃ
  • 2016/11/16 (Wed) 08:21:56
Re: 円弧寸法について
こうすると画像のようになりました(LT2017確認)

*^C^Coffset;;\;select;non;@;non;@;;copy;p;;non;@;non;@;erase;p;;lengthen;dy;;;l;;;DIMANGULAR;nea;@;\cmddia;0;dim1;new;<>^SXL=$M=$(rtos,$(/,$(getvar,perimeter),1),2,1);l;;cmddia;1^M

lengthenの仕様でLT2017では、lの後は;;;(エンター3回)必要でした。
  • chibi-tom
  • 2016/11/16 (Wed) 09:04:05
Re: 円弧寸法について
chibi-tomさん

^SXで改行できるんですね!初めて知りました!
  • とってぃ
  • 2016/11/16 (Wed) 10:17:37
Re: 円弧寸法について
とってぃさま、chibi-tomさま

完璧です!

ありがとうございました!
  • あんぱん
  • 2016/11/16 (Wed) 10:44:38
Re: 円弧寸法について
気になったので確認させてください。

これを尺度によって寸法値を変えるとなると難しいのでしょうか。

たとえば、1/20の縮尺の図面に1/5の縮尺の図面を書きたいとなった場合等です。

よろしくお願いいたします。
  • あんぱん
  • 2016/11/16 (Wed) 11:29:35
Re: 円弧寸法について
一度、下記マクロ参照願います。

マクロ集
79.寸法値異尺度変更
http://ameblo.jp/totthi-macro/entry-11074333370.html

 
  • とってぃ
  • 2016/11/16 (Wed) 11:46:54
Re: 円弧寸法について
とってぃ様

^S=\は、以前zukki-様が発見されてました。
zukki-様さすがです。自分は乗かっただけです。
  • chibi-tom
  • 2016/11/16 (Wed) 13:04:30
Re: 円弧寸法について
今まで使っていた三点指定で寸法を出すものと、今回作っていただいたもの、寸法地位尺度変更を組み込んで考えてみたものの大混乱を極めております。

^C^Corthomode;0;arc;\nea;\\lengthen;last;dy;;$M=draworder;last;;f;;;dimangular;@;\cmddia;0;dim1;new;<>^SXL=$M=$(rtos,$(/,$(getvar,perimeter),1),2,1);l;;cmddia;1^M

ここまでは出来たものの、どう異尺度を組み込むか混乱しておりまして、なにかヒントをいただければ幸いです。

  • あんぱん
  • 2016/11/16 (Wed) 13:26:55
Re: 円弧寸法について
混乱の最中途中まで作ったのも晴らせて頂きます。

^C^Csetenv;is1;分子^X\;is2;分母^X\orthomode;0;arc;\nea;\\lengthen;last;dy;;$M=draworder;last;;f;;;dimangular;@;\cmddia;0;dim1;new;<>^SXL=$M=$(/,$(/,$(getenv,is2),$(getenv,is1)),$(rtos,$(/,$(getvar,perimeter),1),2,1));l;;cmddia;1^M
  • あんぱん
  • 2016/11/16 (Wed) 14:31:21
Re: 円弧寸法について
合ってるか分からないですが修正しました。
お試しください。

♪♪円弧 角度&長さ記入(異尺度対応)
*^C^C$M=setenv;to;0;$(nth,$(getenv,to),;is1;分子^X\;is2;分母^X\;ds;$M="""$(if,$(=,$(/,$(getenv,is1),$(getenv,is2)),1),1,$(getvar,dimscale))""";;to;1,;to;0;orthomode;0;arc;\nea;\\lengthen;l;dy;;draworder;last;;f;;;dimangular;@;\setenv;to;2,,)$(nth,$(getenv,to),,,;to;3;cmddia;0;dim1;new;<>^SXL=$(rtos,$(*,$(/,$(/,$(getenv,is2),$(getenv,is1)),$(getenv,ds)),$(/,$(getvar,perimeter),1)),2,1);l;;cmddia;1,copybase;non;0<0;l;;erase;p;;;l;;pasteclip;non;0<0)^M
  • とってぃ
  • 2016/11/16 (Wed) 15:20:29
Re: 円弧寸法について
分子と分母を変更しても反映されていないようでした。

流れを張っておきます。

コマンド:
コマンド:
コマンド: setenv
変数名を入力: to
値 <0>: 0


コマンド:
SETENV
変数名を入力: is1
値 <1>: 分子*削除*
分子


コマンド:
SETENV
変数名を入力: is2
値 <5>: 分母*削除*
分母


コマンド:
SETENV
変数名を入力: ds
値 <5>: 5


コマンド:
SETENV
変数名を入力: to
値 <0>: 1


コマンド:
コマンド:
コマンド: setenv
変数名を入力: to
値 <1>: 0


コマンド:
SETENV
変数名を入力: to
値 <0>: 0


コマンド: orthomode

ORTHOMODE の新しい値を入力 <0>: 0

コマンド: arc

円弧の始点を指定 または [中心(C)]:
円弧の 2 点目を指定 または [中心(C)/終点(E)]: nea
どこに
円弧の終点を指定:
コマンド: lengthen

計測するオブジェクトを選択 または [増減(DE)/比率(P)/全体(T)/ダイナミック(DY)] <ダイナミック(DY)>: l


現在の長さ: 3222.6662、角度: 48
計測するオブジェクトを選択 または [増減(DE)/比率(P)/全体(T)/ダイナミック(DY)] <ダイナミック(DY)>: dy

変更するオブジェクトを選択 または [元に戻す(U)]:

コマンド: draworder

オブジェクトを選択: last
認識された数: 1

オブジェクトを選択:

オブジェクト表示順序のオプションを入力 [指定オブジェクトの前面(A)/指定オブジェクトの背面(U)/最前面へ移動(F)/最背面へ移動(B)] <最背面へ移動>: f

コマンド:
DRAWORDER

オブジェクトを選択:

コマンド: dimangular

円弧、円、線分を選択 または <頂点を指定(S)>: @

円弧寸法線の位置を指定 または [マルチ テキスト(M)/寸法値(T)/寸法値角度(A)/四半円点(Q)]:
寸法値: 48
コマンド: setenv
変数名を入力: to
値 <0>: 2


コマンド:
コマンド:
コマンド: setenv
変数名を入力: to
値 <2>: 0


コマンド:
SETENV
変数名を入力: to
値 <0>: 3


コマンド: cmddia

CMDDIA の新しい値を入力 <1>: 0

**** システム変数が変更されました ****
モニタされている 1 個のシステム変数が、推奨値から変更されました。変更内容を確認するには、SYSVARMONITOR コマンドを使用します。

コマンド: dim1

DIM(寸法記入): new

寸法値 <"<>"><>\XL=3222.7

オブジェクトを選択: l
認識された数: 1

オブジェクトを選択:

コマンド: cmddia

CMDDIA の新しい値を入力 <0>: 1

**** どのシステム変数も変更されませんでした ****

コマンド:
コマンド:
コマンド: setenv
変数名を入力: to
値 <3>: 0


コマンド: copybase

基点を指定: non
0<0

オブジェクトを選択: l
認識された数: 1

オブジェクトを選択:

コマンド: erase

オブジェクトを選択: p
認識された数: 1

オブジェクトを選択:

コマンド:
ERASE

オブジェクトを選択: l
認識された数: 1

オブジェクトを選択:

コマンド: pasteclip
重複したブロック定義 _DOTSMALL は無視されます。
重複したブロック定義 _DOT は無視されます。
挿入点を指定: non
0<0

コマンド:
コマンド:
コマンド: setenv
変数名を入力: to
値 <0>: 0


コマンド:
SETENV
変数名を入力: is1
値 <1>: 分子*削除*
分子*キャンセル*
  • あんぱん
  • 2016/11/16 (Wed) 15:36:18
Re: 円弧寸法について
>分子と分母を変更しても反映されていないようでした。

反映されないとは、どの様な状態でしょうか?

マクロの流れを見ると
全体の尺度:5(1/5) の図面の中に
異尺度1/5の円弧に対してマクロを実行してるみたいですが・・・

>現在の長さ: 3222.6662、角度: 48
なので異尺度表記でも同上となります。



尚、

>たとえば、1/20の縮尺の図面に1/5の縮尺の図面を書きたいとなった場合等です。

1:1の尺度で長さ100の円弧だとしても
異尺度の円弧表示は100です。

今一度確認願います。
  • とってぃ
  • 2016/11/16 (Wed) 16:04:07
Re: 円弧寸法について
分子に1
分母に2を入力した場合寸法は反映されませんでした。

言い方が変だったかもしれませんが、1/20の図面の中に、1/5まで拡大した図面を入れたいのです。

言葉足らずで申し訳ありません。
  • あんぱん
  • 2016/11/16 (Wed) 16:13:00
Re: 円弧寸法について
>分子に1
>分母に2を入力した場合寸法は反映されませんでした。

反映されない とは
寸法が記入されないのでしょうか?
それとも円弧長3222の数値が、違う数値なのですか?

>1/20の図面の中に、1/5まで拡大した図面を入れたいのです。
1/5に拡大した図面でも
元の円弧長が3222だとしたら
記載される円弧長は3222ですよね。


上記のマクロの流れでも
>寸法値 <"<>"><>\XL=3222.7
と記述されているので、問題ないとは思いますが。

どの様な問題なのか、詳しく記述願います。



尚、2013では問題無く反映されます。
バージョンは何をお使いでしょうか。


※追記
1/20の図面中に、1/5の異尺度の図を描くとありますが
どの様に異尺度を描かれていますか?
  • とってぃ
  • 2016/11/16 (Wed) 16:25:48
Re: 円弧寸法について
寸法が表示されませんでした。

拡大後のものに記入することは出来ないでしょうか。

バージョンは2016LTです
  • あんぱん
  • 2016/11/16 (Wed) 17:07:45
Re: 円弧寸法について
>拡大後のものに記入することは出来ないでしょうか。
その様に作ってるつもりですが
バージョンによって動作が違う場合があるのでご了承ください。

もしかすると
最後に削除してるのが余計だったかもです。

♪♪円弧 角度&長さ記入(異尺度対応)改
*^C^C$M=setenv;to;0;$(nth,$(getenv,to),;is1;分子^X\;is2;分母^X\;ds;$M="""$(if,$(=,$(/,$(getenv,is1),$(getenv,is2)),1),1,$(getvar,dimscale))""";;to;1,;to;0;orthomode;0;arc;\nea;\\lengthen;l;dy;;draworder;last;;f;;;dimangular;@;\setenv;to;2,)$(nth,$(getenv,to),,,cmddia;0;dim1;new;<>^SXL=$(rtos,$(*,$(/,$(/,$(getenv,is2),$(getenv,is1)),$(getenv,ds)),$(/,$(getvar,perimeter),1)),2,1);l;;cmddia;1)^M

ちょっと変更してみたので
お試しください。
  • とってぃ
  • 2016/11/17 (Thu) 08:07:27
Re: 円弧寸法について
出てくる数値が変わらないのですが、拡大する前に寸法を退いてから、拡大しなければならないとそういうことでしょうか。
  • あんぱん
  • 2016/11/17 (Thu) 08:50:58
Re: 円弧寸法について
>出てくる数値が変わらないのですが、拡大する前に寸法を退いてから、拡大しなければならないとそういうことでしょうか。

出てくる数値が変わらないとは?

何度も言って申し訳ありませんが

現状どの様な円弧(長さ・角度)で
全体の尺度はいくらなのか、異尺度はいくらなのか。

それに対して、異尺度の円弧の角度・長さ表記がいくらになるのか。

どの様な状況なのか、詳しく説明願います。


  • とってぃ
  • 2016/11/17 (Thu) 10:53:15
Re: 円弧寸法について
1/10の図面に全体像を書いて、詳細図として1/5の図面を入れ込みたいのです。

社外秘な物になるため大まかになってしまい申し訳ありません。

その際、拡大後のものに、寸法を書き入れようとすると、寸法に誤差が出てしまうということです。

  • あんぱん
  • 2016/11/17 (Thu) 14:27:22
Re: 円弧寸法について
^C^Csetenv;is1;分子^X\;is2;分母^X\orthomode;0;arc;\nea;\\lengthen;last;dy;;$M=draworder;last;;f;;;dimangular;@;\cmddia;0;dim1;new;<>^SXL=$M=$(rtos,$(*,$(/,$(/,$(getenv,is2),$(getenv,is1)),$(getenv,ds)),$(/,$(getvar,perimeter),1)),2,1);l;;cmddia;1^M

のようにやったら2016では理想どおり動きました。お手数おかけしました。
  • あんぱん
  • 2016/11/17 (Thu) 15:15:44
Re: 円弧寸法について
>のようにやったら2016では理想どおり動きました。お手数おかけしました。

上記マクロでは$(getenv,ds)が固定値となる為
その他の尺度の図面では、動作しないと思います。


少し前に記述した
♪♪円弧 角度&長さ記入(異尺度対応)改 マクロでは

$(if,$(=,$(/,$(getenv,is1),$(getenv,is2)),1),1,$(getvar,dimscale))

この部分で、分子:分母が1:1なら実寸の1
それ以外だと、全体の尺度に対して異尺度で描くようにしています。

$(getvar,dimscale) は寸法スタイル管理の「全体の尺度」の値です。

先程添付された画像の「全体の尺度」はいくらになっていますでしょうか。
「全体の尺度」が1:10になってないのでしょうか??



  • とってぃ
  • 2016/11/17 (Thu) 16:36:17
Re: 円弧寸法について
なぜかマクロが分割で小出しに動いてしまう為、正確に動作が確認できなくなっております。

少々お待ち下さい。
  • あんぱん
  • 2016/11/18 (Fri) 14:44:11
Re: 円弧寸法について
それは
マクロ最後の「^M」の後ろに
余計な空白や改行がある場合が多いです。

余計な空白や改行を削除してみて下さい。
  • とってぃ
  • 2016/11/18 (Fri) 15:22:46
Re: 円弧寸法について
返信遅くなり申し訳ありません。
大きな仕事が入ってしまったり、クレーム処理等で忙しく返信できませんでした。

余白を消しても動作が出来なかった為、AUTOCAD自体を入れなおしたところ正常に作動しました。

まことに申し訳ありませんでした。
  • あんぱん
  • 2017/06/26 (Mon) 10:05:16

返信フォーム






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