120.ストレッチ(2006以降版) | AutoCADマクロ屋本舗
[120]
ストレッチ(2006以降版) [2007.7.11修正]
*^C^C$m=setenv;to;0;$(nth,$(getenv,to),offset;;^Xオブジェクトを選択^X\;undo;be;setenv;to;1;select;non;@;non;@;;setenv;to;4,undo;m;stretch;c;non;@;'setenv;to;2;\r,,,,,)$(nth,$(getenv,to),,,offset;;^Xオブジェクトを選択:[UNDO(R)]^X\$M="""$(if,$(getvar,cmdactive),;setenv;to;1;select;non;@;non;@;;setenv;to;4,undo;b;setenv;to;2)""",,,,)$(nth,$(getenv,to),,,,,;p1;$(getvar,lastpoint);;to;5;undo;m;select;c;end+ins+nod;@;end+ins+nod;@;r;$(getvar,lastpoint);;setenv;to;6,stretch;c;end+ins+nod;@;end+ins+nod;@;;end+ins+nod;@;\setenv;to;2,,)$(nth,$(getenv,to),,,,,,,-layer;n;s-damy;;chprop;p;;la;s-damy;;-layer;LO;s-damy;;stretch;c;end+ins+nod;@;end+ins+nod;@;;end+ins+nod;@;'-layer;u;s-damy;;--キャンセル不可--[UNDO(R)]^X\setenv;to;7,)$(nth,$(getenv,to),,,,,,,,copybase;non;0<0;p;;undo;b;erase;non;$(getenv,p1);;pasteclip;non;0<0;setenv;to;2)^M


LT2000/LT2004 R2005/2006 動作確認済

●使い方
1.オブジェクトを選択
  ※ここで、オブジェクトを選択せず、任意の点を指定した場合、2へ
   ここでオブジェクトを選択すると【ダイレクトストレッチ】へ
2.もう一方のコーナーを指定
3.除外するオブジェクトを選択 (※無ければエンター/右クリック)
4.基点 または 移動距離を指定
5.目的点を指定

-----ここまでは通常のストレッチ-----

6.オブジェクトを選択:[元に戻す(R-Click)]
  ※ここで、オブジェクトを選択せず、任意の点を指定した場合、2へ
   ここでオブジェクトを選択すると【ダイレクトストレッチ】へ
   右クリックすると元に戻し、1へ

~【ダイレクトストレッチ】~
7.目的点を指定 → 6へ

※3~5及び7の段階で、元に戻したい場合は、
 元に戻るまで右クリック!!
 (2の段階で右クリックすると、1へ戻ります)

▲注意
1.マクロが長い為、カスタマイズダイアログに張り付け出来ない場合は
  メニューファイルに直接張り付けて下さい。
2.端点の重なったオブジェクトをダイレクトストレッチすると、画層"s-damy"が作成されます。
  その為、ダイレクトストレッチ中に途中キャンセルした場合
  オブジェクトが画層"s-damy"となってしまいます。
  ※ただし、最後まで動作させると、画層"s-damy"は残りません。
  尚、その他の状態では問題有りません。


■コメント
2006以降では、ストレッチコマンドの仕様変更の為、「60.ストレッチ」が使えませんでした。

また、以前作ったバージョン(このページ下)は、非表示画層が表示されたりと
使い勝手が悪かったのですが、ついに修正出来ました♪

使い方を間違えると、重なったオブジェクトがダミー画層"s-damy"になりますが
それさえ気を付ければ、以前のダイレクトストレッチと変わらず使えます!
お試し下さい。

※尚、2006以前のバージョンの場合は、「60.ストレッチ」をオススメします。



描きたい操作がすぐわかる!AutoCAD LT 操作ハンドブック 2011/2010/2009.../鈴木 孝子

¥2,499
Amazon.co.jp




↓↓↓旧バージョン↓↓↓

ダイレクトストレッチ(2006以降版)[途中キャンセル不可]
*^C^Coffset;;\;select;non;@;non;@;;setenv;p1;$M=$(getvar,lastpoint);-layer;n;DM;;chprop;all;r;p;;LA;DM;;-layer;LO;DM;;id;end+ins+nod;@;stretch;c;non;@;non;@;;non;@;【途中キャンセル不可】^X\copybase;non;0,0;p;;undo;e;u;z;e;erase;nea;$M="$(getenv,p1)";;z;p;pasteclip;non;0,0^M


R・LT2006/LT2000 動作確認済

●使い方
1.オブジェクトを選択
2.目的点を指定

▲注意
1.ストレッチ中に、誤って途中キャンセルすると、ロックされた画層"DM"に
  選択したオブジェクト以外の全てのオブジェクトが入ったままとなりますので
  UNDO等で元に戻してください。
2.使用途中に、非表示画層が全て表示されてしまいますが、
  続けてストレッチを行なえば、元の状態に戻ります。

■コメント
2006でストレッチコマンドの仕様変更がなされた為
某掲示板にて、2006用に無理矢理変更したものです。

※R・LT2006の方以外は
↓以下のマクロか、「60.ストレッチ」を使用されるコトをオススメします。
*^C^Cstretch;\non;@;;id;end+ins+nod;@;stretch;c;non;@;non;@;r;all;a;p;;@^M



描きたい操作がすぐわかる!AutoCAD LT 操作ハンドブック 2011/2010/2009.../鈴木 孝子

¥2,499
Amazon.co.jp