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

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

寸法線の最初の間隔
はじめまして。
数か月前からAUTOCADを始めました。
会社のものなので、
AUTOCAD2016です。

寸法線を引く際に、
オブジェクトに対して
一番最初に引く寸法の間隔はマクロで指定できるのでしょうか?
何段か複数の際に、DIMSPACEコマンドを使用するのは
わかるのですが、最初に引いた寸法線はできないので。。。

弊社は、寸法尺度×8(1:50なら、間隔は400)で寸法線を引いております。
どうぞ、宜しくお願い致します。
  • むに
  • 2018/09/26 (Wed) 17:17:08
Re: 寸法線の最初の間隔
何を基準にその寸法位置を決めるかが不確定です。

添付図面の様に、ただの矩形ならいいですが、
寸法の1点目と2点目が平行では無い(段違いの)場合
寸法位置は1点目から8なのか、2点目からなのか。

また、寸法位置は上下左右どちら方向なのか。


何を基準に、寸法位置を決めるのかが不確定すぎますねぇ。
  • とってぃ
  • 2018/09/27 (Thu) 08:58:37
Re: 寸法線の最初の間隔
いまさらですが

寸法記入Ver
^C^Csetenv;dms1;間隔を指定^X\dimlinear;\'setenv;p1;$M=$(getvar,lastpoint);\\select;l;;dimlinear;$M="$(getenv,p1)";non;@;non;@;dimspace;l;p;;$M="""$(getenv,dms1)""";ai_dim_texthome;p;;dimoverride;dimtmove;1;;p;;erase;$M="$(getenv,p1)";;^Z

1.マクロ起動
2.間隔指定
3.長さ寸法記入
※、長さ寸法のみ、オブジェクトが平行では無い(段違いの)場合は1点目からの間隔になります

寸法選択ver
^C^Csetenv;dms1;間隔を指定^X\join;基準のオブジェクトを選択^X\;select;non;@;non;@;;id;non;@;setenv;p1;$M=$(getvar,lastpoint);select;間隔を調整する寸法を選択^X\dimlinear;nea;$M="$(getenv,p1)";end;@;non;@;dimspace;l;p;;$M="""$(getenv,dms1)""";ai_dim_texthome;p;;dimoverride;dimtmove;1;;p;;erase;$M="$(getenv,p1)";;^Z

1.マクロ起動
2.間隔指定
3.基準のオブジェクト選択(線分、ポリラインの直線部分)
4.間隔を調整する寸法を選択
※、長さ寸法のみ、オブジェクトが平行では無い(段違いの)場合は基準のオブジェクト選択箇所に近い端点からの間隔になります

  • chibi-tom
  • 2019/07/03 (Wed) 15:25:22
Re: 寸法線の最初の間隔
去年の質問にもかかわらず、ありがとうございます。
いま、試した見たところ、
最後に寸法間隔を調整したあとに、
別の寸法が表示されてしまいます。
(間隔は指定通りの数値になるので問題ありません)
これはエラーでしょうか?
どちらのマクロでも起こります。

コマンド: *キャンセル*

コマンド:
コマンド:
コマンド: setenv
変数名を入力: dms1
値 <100>: 間隔を指定*削除*
間隔を指定

コマンド:
コマンド: join
ソース オブジェクトを選択: 基準のオブジェクトを選択*削除*
基準のオブジェクトを選択
線分、開いたポリライン、円弧、楕円弧、または開いたスプラインを選択してください。サポートされるオブジェクトを選択:

コマンド: select

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

オブジェクトを選択: non
@
認識された数: 1 (重複している数: 1), 総数 1

オブジェクトを選択:

コマンド: id
点を指定: non
@
X = 739.39 Y = 5462.90 Z = 0.00

コマンド: setenv
変数名を入力: p1
値 <403.87783149,5263.27955032,0>: 739.38956667,5462.89991267,0

コマンド:
コマンド: select

オブジェクトを選択: 間隔を調整する寸法を選択*削除*
間隔を調整する寸法を選択*キャンセル*

コマンド:
コマンド:
コマンド: setenv
変数名を入力: dms1
値 <100>: 間隔を指定*削除*
間隔を指定

コマンド:
コマンド: join
ソース オブジェクトを選択: 基準のオブジェクトを選択*削除*
基準のオブジェクトを選択
線分、開いたポリライン、円弧、楕円弧、または開いたスプラインを選択してください。サポートされるオブジェクトを選択:

コマンド: select

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

オブジェクトを選択: non
@
認識された数: 1 (重複している数: 1), 総数 1

オブジェクトを選択:

コマンド: id
点を指定: non
@
X = 655.79 Y = 5259.39 Z = 0.00

コマンド: setenv
変数名を入力: p1
値 <739.38956667,5462.89991267,0>: 655.78913718,5259.39049237,0

コマンド:
コマンド: select

オブジェクトを選択: 間隔を調整する寸法を選択*削除*
間隔を調整する寸法を選択認識された数: 1

オブジェクトを選択:

コマンド: dimlinear

1 本目の寸法補助線の起点を指定 または <オブジェクトを選択>: nea
どこに 655.78913718,5259.39049237,0

2 本目の寸法補助線の起点を指定: end
どこの @

寸法線の位置を指定 または [マルチ テキスト(M)/寸法値(T)/寸法値角度(A)/水平(H)/垂直(V)/回転(R)]: non
@

寸法値: 247
コマンド: dimspace

基準の寸法を選択:l


間隔を調整する寸法を選択:p
認識された数: 1


間隔を調整する寸法を選択:

値を入力 または [自動(A)] <自動>: 100

コマンド: ai_dim_texthome

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

オブジェクトを選択:

オブジェクトを選択: dimoverride


*選択無効*
点を指定 または 窓(W)/最後(L)/交差(C)/ボックス(BOX)/すべて(ALL)/フェンス(F)/ポリゴン窓(WP)/ポリゴン交差(CP)/グループ(G)/追加モード(A)/除外(R)/一括モード(M)/直前(P)/元に戻す(U)/自動モード(AU)/単一モード(SI)

オブジェクトを選択: *キャンセル*

コマンド:
コマンド:
コマンド: _dimlinear
1 本目の寸法補助線の起点を指定 または <オブジェクトを選択>:
2 本目の寸法補助線の起点を指定:
寸法線の位置を指定 または [マルチ テキスト(M)/寸法値(T)/寸法値角度(A)/水平(H)/垂直(V)/回転(R)]: *キャンセル*

コマンド: もう一方のコーナーを指定 または [フェンス(F)/ポリゴン窓(WP)/ポリゴン交差(CP)]:
コマンド: _.erase 認識された数: 1

コマンド:
コマンド:
コマンド: _line
1 点目を指定:
次の点を指定 または [元に戻す(U)]:
次の点を指定 または [元に戻す(U)]: *キャンセル*

コマンド:
コマンド:
コマンド:
コマンド: _move 認識された数: 1

基点を指定 または [移動距離(D)] <移動距離>:
目的点を指定 または <基点を移動距離として使用>:
コマンド: *キャンセル*

コマンド:
コマンド: *キャンセル*

コマンド:
コマンド:
コマンド: _dimlinear
1 本目の寸法補助線の起点を指定 または <オブジェクトを選択>:
2 本目の寸法補助線の起点を指定:
寸法線の位置を指定 または [マルチ テキスト(M)/寸法値(T)/寸法値角度(A)/水平(H)/垂直(V)/回転(R)]:
寸法値: 499
コマンド:
コマンド:
コマンド: setenv
変数名を入力: dms1
値 <100>: 間隔を指定*削除*
間隔を指定

コマンド:
コマンド: join
ソース オブジェクトを選択: 基準のオブジェクトを選択*削除*
基準のオブジェクトを選択

ソースに結合する線分を選択:

コマンド: select

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

オブジェクトを選択: non
@
認識された数: 1 (重複している数: 1), 総数 1

オブジェクトを選択:

コマンド: id
点を指定: non
@
X = 766.21 Y = 5490.08 Z = 0.00

コマンド: setenv
変数名を入力: p1
値 <655.78913718,5259.39049237,0>: 766.2140512,5490.0828083,0

コマンド:
コマンド: select

オブジェクトを選択: 間隔を調整する寸法を選択*削除*
間隔を調整する寸法を選択認識された数: 1

オブジェクトを選択:

コマンド: dimlinear

1 本目の寸法補助線の起点を指定 または <オブジェクトを選択>: nea
どこに 766.2140512,5490.0828083,0

2 本目の寸法補助線の起点を指定: end
どこの @

寸法線の位置を指定 または [マルチ テキスト(M)/寸法値(T)/寸法値角度(A)/水平(H)/垂直(V)/回転(R)]: non
@

寸法値: 137
コマンド: dimspace

基準の寸法を選択:l


間隔を調整する寸法を選択:p
認識された数: 1


間隔を調整する寸法を選択:

値を入力 または [自動(A)] <自動>: 100

コマンド: ai_dim_texthome

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

オブジェクトを選択:

オブジェクトを選択: dimoverride


*選択無効*
点を指定 または 窓(W)/最後(L)/交差(C)/ボックス(BOX)/すべて(ALL)/フェンス(F)/ポリゴン窓(WP)/ポリゴン交差(CP)/グループ(G)/追加モード(A)/除外(R)/一括モード(M)/直前(P)/元に戻す(U)/自動モード(AU)/単一モード(SI)

オブジェクトを選択: *キャンセル*

コマンド: もう一方のコーナーを指定 または [フェンス(F)/ポリゴン窓(WP)/ポリゴン交差(CP)]:
コマンド: _.erase 認識された数: 1
  • むに
  • 2019/07/04 (Thu) 10:12:39
Re: 寸法線の最初の間隔

コマンド: ai_dim_texthome

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

オブジェクトを選択:

オブジェクトを選択: dimoverride ←ここでエラーになっていますね

マクロの『ai_dim_texthome;p;;dimoverride;』の部分がどうなっているか確認してください
エンターの数が多いような気がしますがバージョンの違いなのかLT2019だと再現できないです

もし『ai_dim_texthome;p;;;dimoverride;』になっていたら修正してみてください

最悪『ai_dim_texthome;p;;dimoverride;dimtmove;1;;p;;』の部分は無くてもOKだと思います。


  • chibi-tom
  • 2019/07/04 (Thu) 11:52:16
Re: 寸法線の最初の間隔
お返事ありがとうございます。

si_~の部分を削除して、試した見たところ
正常動作しました。

ありがとうございました。
  • むに
  • 2019/07/04 (Thu) 14:58:49
Re: 寸法線の最初の間隔
2014LTでは水平方向は綺麗に動作していますが
垂直方向への対応はできないのでしょうか?

寸法線の離れの基準位置を任意に指定することは可能なのでしょうか,
始点→終点→基準位置→エンターのようにはできるのでしょうか
よろしくお願いします


  • Fukuda
  • 2019/07/04 (Thu) 16:32:52
Re: 寸法線の最初の間隔
本当ですね気づかなかった
これでどうでしょうか

>始点→終点→基準位置→エンター
寸法描いた後に間隔指定という判断をしました。

^C^Cdimlinear;\'setenv;p1;$M=$(getvar,lastpoint);\'setenv;p2;$M="$(getvar,lastpoint)";\select;l;;setenv;dms1;間隔を指定^X\dimlinear;$M="$(getenv,p1)";non;$M="""$(getenv,p2)""";non;@;dimspace;l;p;;$M="""$(getenv,dms1)""";ai_dim_texthome;p;;dimoverride;dimtmove;1;;p;;erase;l;;^Z

むにさんにもお伝えしたように『ai_dim_texthome;p;;dimoverride;dimtmove;1;;p;;』の部分は無くてもOKだと思います。
不具合があるようでしたら削除してください。
  • chibi-tom
  • 2019/07/04 (Thu) 16:52:47
Re: 寸法線の最初の間隔
ありがとう御座います.
水平,垂直ともに動作していますが
始点終点からの離れ量じゃなく,基準点からの離れ量の指定にはならないのでしょうか?
  • Fukuda
  • 2019/07/04 (Thu) 17:06:16
Re: 寸法線の最初の間隔
すいません

オブジェクトが平行では無い(段違いの)場合に不具合がありました。

ちょっと考えてみますが、とりあえずは1点目と2点目が水平または垂直でお願いします。

  • chibi-tom
  • 2019/07/04 (Thu) 17:07:47
Re: 寸法線の最初の間隔
>始点終点からの離れ量じゃなく,基準点からの離れ量の指定にはならないのでしょうか?
これはこの質問とは内容が違ってきてしまうような気がしますが

  • chibi-tom
  • 2019/07/04 (Thu) 17:11:35
Re: 寸法線の最初の間隔
ありがとう御座います
寸法を作図するときにオブジェクトスナップトラッキングで基準点を指定してから寸法位置を指定しているので,このマクロがとても便利だと思いました
凸凹なのどの寸法をとる時に指定ができるととても便利に使用できるとおもうんです
  • Fukuda
  • 2019/07/04 (Thu) 17:39:35
Re: 寸法線の最初の間隔
こんな感じになりますか?

*^C^C$M=setenv;to;0;$(nth,$(getenv,to),dimlinear;\'setenv;p1;$M="$(getvar,lastpoint)";\\setenv;to;1,,)$(nth,$(getenv,to),,offset;;基準のオブジェクトを選択(R-Clickで終了)^X\$M="""$(if,$(getvar,cmdactive),;select;non;@;non;@;;setenv;dms1;間隔を指定<$(getenv,dms1)>^X\id;non;@;setenv;p2;$M="$(getvar,lastpoint)";setenv;to;2,^Csetenv;to;0)""",)$(nth,$(getenv,to),,,select;l;;dimlinear;nea;$M=$(getenv,p2);end;@;non;@;dimspace;l;p;;$M=$(getenv,dms1);ai_dim_texthome;p;;dimoverride;dimtmove;1;;p;;erase;l;;setenv;to;0)^M

1.マクロ起動
2.長さ寸法記入
3.基準のオブジェクトを選択(R-Clickで終了できます)
4.間隔指定(同じ場合はEnter or R-ClickでOK)

  • chibi-tom
  • 2019/07/05 (Fri) 08:30:48
Re: 寸法線の最初の間隔
ありがとうございます
水平寸法での基準点が始点終点の下側にとった場合には基準点から下側に離れて欲しいのですが.今の場合は基準点の上側に離れてしまします
(基準点が始点終点の上側の場合はOKなのです,始点終点から基準点からの外側に離れてほしいのです(値がマイナスは入力出来ないようですね))
垂直での基準点も同じような動作にして欲しいのですが.
  • Fukuda
  • 2019/07/05 (Fri) 11:47:46
Re: 寸法線の最初の間隔
>基準点の上側
2の工程で長さ寸法を基準点より下に書いてもだめなんですか?
ちなみに基準点と書かれていますが、基準となるオブジェクト(線分やポリライン)を選択してください。

長さ寸法はいつもどおりにだいたいこのくらい?な場所(基準線より離したい側)に描いていただければよいと思うのですが
2の工程で長さ寸法どこに描いてますか?

ちょっと状況がわからないので
現状どうなるのか、完成形はどうなのかを画像で見たいのですが可能ですか?
  • chibi-tom
  • 2019/07/05 (Fri) 12:50:37
Re: 寸法線の最初の間隔
ご足労をおかけします
こんな感じです,よろしくお願いします
離れは15としています.
1/20での場合は300としています
  • Fukuda
  • 2019/07/05 (Fri) 13:15:01
Re: 寸法線の最初の間隔
これが完成形ですよね

長さ寸法はいつもどおりにだいたいこのくらい?な場所(基準線より離したい側)に描いていただければよいと思うのですが
これでできないですか?

2の工程で長さ寸法どこに描いてますか?
  • chibi-tom
  • 2019/07/05 (Fri) 13:22:14
Re: 寸法線の最初の間隔
説明の不足でした
見てください
  • Fukuda
  • 2019/07/05 (Fri) 14:34:07
Re: 寸法線の最初の間隔
作業工程が違いますね
長さ寸法を普通に記入してください
その後、基準線の選択です。

1.マクロ起動
2.始点選択
3.終点選択
4.寸法線の位置選択(ここで基準線より離したい側を選択してください)
5.基準となるオブジェクト(線分、ポリライン)を選択
6.離れ量入力

です。

確認してください
  • chibi-tom
  • 2019/07/05 (Fri) 14:39:58
Re: 寸法線の最初の間隔
大変ありがとうございます
私の作業ミスでした,綺麗に動作しています.
作図したい側と基準となるオブジェクトの指定の間違いにようやく指摘されて分かりました.
長い時間,教えていただいてありがとうございます
  • Fukuda
  • 2019/07/05 (Fri) 15:01:06

返信フォーム






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