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

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

マクロの文法について教えてください。Rev3
しつこく教えてください。
133:文字二重線付加についてです。
$(nthのネスティングだけを考慮したカンマを数えると
①$(nth,which,①arg0,,,,,)
②$(nth,which,,②arg1,,,,)
③$(nth,which,,,③arg2,③arg3,③arg4,③arg5,③arg6,③arg7,,)
④$(nth,which,,,,④arg3,④arg4,④arg5,④arg6,④arg7,,)
⑤$(nth,which,,,,,⑤arg4)
となるように思えます。
但し、③$(nthと④$(nthには、@マークの次に数字がくるものと、また、,"または",の組み合わせがあります。これらを無視すると
①$(nth,which,①arg0,,,,,)
②$(nth,which,,②arg1,,,,)
③$(nth,which,,,③arg2,,,)
④$(nth,which,,,,④arg3,,)
⑤$(nth,which,,,,,⑤arg4)
と変わります。やはり、2番目の状態が正解と思いますが、正しいでしょうか?
@+数字もしくは、いきなりカンマは、座標の入力だと思いますが、合ってますか?
",”、,"、",は、絶対にnthのカンマで無いと断定できますか?
(WordのVBAを組む関係上知りたい。断定できれば、正規表現でヒットさせてスキップできる)
つまらないことだと思いますがご教授宜しくお願い致します。

  • わん
  • 2017/12/22 (Fri) 22:06:05
Re: マクロの文法について教えてください。Rev3
","は直交座標を入力するためです。
nthは条件と自身で2回評価するのですがカンマ(,)が構文の記号なのでそれをエスケープするためですね。

*^C^C$M=setenv;to;0;$(nth,$(getenv,to),id;0","0;id;0""","""0;id;0""""""","""""""0)^Z
最初の0","0と0""","""0は0,0に
0""""""","""""""0は0","0に展開されます。

AutoCADの座標入力は
原点を基準にした
直交座標系式 x,y[,z]
円筒座標形式 r<thita[,z]
局座標形式 r<thita<phi

直前を基準にした
直交座標系式 @x,y[,z]
円筒座標形式 @r<thita[,z]
局座標形式 @r<thita<phi

があります。

なので
0","0としないで0<0とすることもあります。

  • zukki-
  • 2017/12/23 (Sat) 00:54:42

返信フォーム






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