図形の整列
の編集
[
ホーム
|
一覧
|
検索
|
最終更新
|
ヘルプ
] [
新規
]
VWRR
・
WIKIBOX
建築mome
・
メーカー
最新の40件
2018-07-17
VectorScript
2013-05-25
例題の解説
2011-12-09
ΔxΔy
GetLine
Distance
Num2Str
2011-12-08
寸法変倍
MenuBar
日付スタンプ
Date
面積スタンプ
2011-12-07
HArea
Num2StrF
TextOrigin
GetPt
FSActLayer
FActLayer
Concat
BeginText
EndText
図面の中を検索
ReDraw
MoveObjs
GetKeyDown
ClrMessage
Message
Y方向複製
2011-12-06
キー入力
ダイアログ
2011-12-04
図形の整列
2011-11-26
属性を設定する
Locus
変数
Oval
識別子
定数
基本型
言語仕様
制御命令
IF
total:
1027
today:
1
yesterday:
1
now:
2
Top
> 図形の整列
** 整列コマンド [#w5f8dee5] 下揃え Procedure ajustObjectBottom; var gBotAxis: real; gCount:integer; p1X, p1Y, p2X, p2Y:REAL; function getBotAxis( pObj:Handle ):boolean; begin gCount := gCount +1; GetBBox( pObj, p1X, p1Y, p2X, p2Y ); if gBotAxis > p2Y then gBotAxis := p2Y; end; function doMove( pObj:Handle ):boolean; begin GetBBox( pObj, p1X, p1Y, p2X, p2Y ); HMove(pObj, 0, gBotAxis - p2Y); end; {main} begin gCount := 0; gBotAxis := 10000000000.0; ForEachObjectInLayer(getBotAxis , 2, 0, 4 ); if gCount > 1 then ForEachObjectInLayer(doMove , 2, 0, 4 ); end; run ( ajustObjectBottom ); 上揃え Procedure ajustObjectTop; var gBotAxis: real; gCount:integer; p1X, p1Y, p2X, p2Y:REAL; function getBotAxis( pObj:Handle ):boolean; begin gCount := gCount +1; GetBBox( pObj, p1X, p1Y, p2X, p2Y ); if gBotAxis < p1Y then gBotAxis := p1Y; end; function doMove( pObj:Handle ):boolean; begin GetBBox( pObj, p1X, p1Y, p2X, p2Y ); HMove(pObj, 0,gBotAxis - p1y); end; {main} begin gCount := 0; gBotAxis := -10000000000.0; ForEachObjectInLayer(getBotAxis , 2, 0, 4 ); if gCount > 1 then ForEachObjectInLayer(doMove , 2, 0, 4 ); end; run ( ajustObjectTop ); 右揃え Procedure ajustObjectR; var gBotAxis: real; gCount:integer; p1X, p1Y, p2X, p2Y:REAL; function getBotAxis( pObj:Handle ):boolean; begin gCount := gCount +1; GetBBox( pObj, p1X, p1Y, p2X, p2Y ); if gBotAxis < p2x then gBotAxis := p2x; end; function doMove( pObj:Handle ):boolean; begin GetBBox( pObj, p1X, p1Y, p2X, p2Y ); HMove(pObj,gBotAxis - p2x,0); end; {main} begin gCount := 0; gBotAxis := -10000000000.0; ForEachObjectInLayer(getBotAxis , 2, 0, 4 ); if gCount > 1 then ForEachObjectInLayer(doMove , 2, 0, 4 ); end; run ( ajustObjectR ); 左揃え Procedure ajustObjectL; var gBotAxis: real; gCount:integer; p1X, p1Y, p2X, p2Y:REAL; function getBotAxis( pObj:Handle ):boolean; begin gCount := gCount +1; GetBBox( pObj, p1X, p1Y, p2X, p2Y ); if gBotAxis > p1x then gBotAxis := p1x; end; function doMove( pObj:Handle ):boolean; begin GetBBox( pObj, p1X, p1Y, p2X, p2Y ); HMove(pObj,gBotAxis - p1x,0); end; {main} begin gCount := 0; gBotAxis := 10000000000.0; ForEachObjectInLayer(getBotAxis , 2, 0, 4 ); if gCount > 1 then ForEachObjectInLayer(doMove , 2, 0, 4 ); end; run ( ajustObjectL ); 左右中央 Procedure ajustObLcenter; VAR gRaxis:REAL; gLaxis:REAL; gCount:INTEGER; p1x,p1y,p2x,p2y:REAL; FUNCTION getRightAxis(pObj:Handle):BOOLEAN; BEGIN gCount := gCount + 1; GetBBox(pObj,p1x,p1y,p2x,p2y); IF gRaxis < p2x THEN gRaxis := p2x; IF gLaxis > p1x THEN gLaxis := p1x; END; FUNCTION doMove(pObj:Handle):BOOLEAN; BEGIN GetBBox(pObj,p1x,p1y,p2x,p2y); HMove(pObj,(gRaxis+gLaxis-(p2x+p1x))/2,0); END; {main} BEGIN gCount:=0; gRaxis:=-10000000000.0; gLaxis:=10000000000.0; ForEachObjectInLayer(getRightAxis,2,0,4); IF gCount>1 THEN ForEachObjectInLayer(doMove,2,0,4); END; run (ajustObLcenter); 上下中央 Procedure ajustObHcenter; VAR gTaxis:REAL; gBaxis:REAL; gCount:INTEGER; p1x,p1y,p2x,p2y:REAL; FUNCTION getTopAxis(pObj:Handle):BOOLEAN; BEGIN gCount := gCount + 1; GetBBox(pObj,p1x,p1y,p2x,p2y); IF gTaxis < p1y THEN gTaxis := p1y; IF gBaxis > p2y THEN gBaxis := p2y; END; FUNCTION doMove(pObj:Handle):BOOLEAN; BEGIN GetBBox(pObj,p1x,p1y,p2x,p2y); HMove(pObj,0,(gTaxis+gBaxis-(p2y+p1y))/2); END; {main} BEGIN gCount:=0; gTaxis:=-10000000000.0; gBaxis:=10000000000.0; ForEachObjectInLayer(getTopAxis,2,0,4); IF gCount>1 THEN ForEachObjectInLayer(doMove,2,0,4); END; run (ajustObHcenter); 上下左右中央 Procedure ajustObLHcenter; VAR gRaxis:REAL; gLaxis:REAL; gTaxis:REAL; gBaxis:REAL; gCount:INTEGER; p1x,p1y,p2x,p2y:REAL; FUNCTION getCenterAxis(pObj:Handle):BOOLEAN; BEGIN gCount := gCount + 1; GetBBox(pObj,p1x,p1y,p2x,p2y); IF gRaxis < p2x THEN gRaxis := p2x; IF gLaxis > p1x THEN gLaxis := p1x; IF gTaxis < p1y THEN gTaxis := p1y; IF gBaxis > p2y THEN gBaxis := p2y; END; FUNCTION doMove(pObj:Handle):BOOLEAN; BEGIN GetBBox(pObj,p1x,p1y,p2x,p2y); HMove(pObj,(gRaxis+gLaxis-(p2x+p1x))/2,(gTaxis+gBaxis-(p2y+p1y))/2); END; {main} BEGIN gCount:=0; gRaxis:=-10000000000.0; gLaxis:=10000000000.0; ForEachObjectInLayer(getCenterAxis,2,0,4); IF gCount>1 THEN ForEachObjectInLayer(doMove,2,0,4); END; run (ajustObLHcenter);
タイムスタンプを変更しない
**下揃え [#ec7d8705] >PROCEDURE ajustObjectBottom; var &color(green){{変数宣言部}}; gBotAxis: real; &color(green){{gBotAxisは実数}}; gCount:integer; &color(green){{gCountは整数}}; p1X, p1Y, p2X, p2Y:REAL; &color(green){{p1X, p1Y, p2X, p2Yは実数}}; >&color(green){{サブルーチン部}}; function getBotAxis( pObj:Handle ):boolean; begin gCount := gCount +1; GetBBox( pObj, p1X, p1Y, p2X, p2Y );&color(green){{p1:左上、p2:右下}}; if gBotAxis > p2Y then gBotAxis := p2Y; end; function doMove( pObj:Handle ):boolean; begin GetBBox( pObj, p1X, p1Y, p2X, p2Y ); HMove(pObj, 0, gBotAxis - p2Y); end; &color(green){{main}}; begin gCount := 0; gBotAxis := 10000000000.0; ForEachObjectInLayer(getBotAxis , 2, 0, 4 ); if gCount > 1 then ForEachObjectInLayer(doMove , 2, 0, 4 ); end; run ( ajustObjectBottom ); ** 整列コマンド [#w5f8dee5] 下揃え Procedure ajustObjectBottom; var gBotAxis: real; gCount:integer; p1X, p1Y, p2X, p2Y:REAL; function getBotAxis( pObj:Handle ):boolean; begin gCount := gCount +1; GetBBox( pObj, p1X, p1Y, p2X, p2Y ); if gBotAxis > p2Y then gBotAxis := p2Y; end; function doMove( pObj:Handle ):boolean; begin GetBBox( pObj, p1X, p1Y, p2X, p2Y ); HMove(pObj, 0, gBotAxis - p2Y); end; {main} begin gCount := 0; gBotAxis := 10000000000.0; ForEachObjectInLayer(getBotAxis , 2, 0, 4 ); if gCount > 1 then ForEachObjectInLayer(doMove , 2, 0, 4 ); end; run ( ajustObjectBottom ); 上揃え Procedure ajustObjectTop; var gBotAxis: real; gCount:integer; p1X, p1Y, p2X, p2Y:REAL; function getBotAxis( pObj:Handle ):boolean; begin gCount := gCount +1; GetBBox( pObj, p1X, p1Y, p2X, p2Y ); if gBotAxis < p1Y then gBotAxis := p1Y; end; function doMove( pObj:Handle ):boolean; begin GetBBox( pObj, p1X, p1Y, p2X, p2Y ); HMove(pObj, 0,gBotAxis - p1y); end; {main} begin gCount := 0; gBotAxis := -10000000000.0; ForEachObjectInLayer(getBotAxis , 2, 0, 4 ); if gCount > 1 then ForEachObjectInLayer(doMove , 2, 0, 4 ); end; run ( ajustObjectTop ); 右揃え Procedure ajustObjectR; var gBotAxis: real; gCount:integer; p1X, p1Y, p2X, p2Y:REAL; function getBotAxis( pObj:Handle ):boolean; begin gCount := gCount +1; GetBBox( pObj, p1X, p1Y, p2X, p2Y ); if gBotAxis < p2x then gBotAxis := p2x; end; function doMove( pObj:Handle ):boolean; begin GetBBox( pObj, p1X, p1Y, p2X, p2Y ); HMove(pObj,gBotAxis - p2x,0); end; {main} begin gCount := 0; gBotAxis := -10000000000.0; ForEachObjectInLayer(getBotAxis , 2, 0, 4 ); if gCount > 1 then ForEachObjectInLayer(doMove , 2, 0, 4 ); end; run ( ajustObjectR ); 左揃え Procedure ajustObjectL; var gBotAxis: real; gCount:integer; p1X, p1Y, p2X, p2Y:REAL; function getBotAxis( pObj:Handle ):boolean; begin gCount := gCount +1; GetBBox( pObj, p1X, p1Y, p2X, p2Y ); if gBotAxis > p1x then gBotAxis := p1x; end; function doMove( pObj:Handle ):boolean; begin GetBBox( pObj, p1X, p1Y, p2X, p2Y ); HMove(pObj,gBotAxis - p1x,0); end; {main} begin gCount := 0; gBotAxis := 10000000000.0; ForEachObjectInLayer(getBotAxis , 2, 0, 4 ); if gCount > 1 then ForEachObjectInLayer(doMove , 2, 0, 4 ); end; run ( ajustObjectL ); 左右中央 Procedure ajustObLcenter; VAR gRaxis:REAL; gLaxis:REAL; gCount:INTEGER; p1x,p1y,p2x,p2y:REAL; FUNCTION getRightAxis(pObj:Handle):BOOLEAN; BEGIN gCount := gCount + 1; GetBBox(pObj,p1x,p1y,p2x,p2y); IF gRaxis < p2x THEN gRaxis := p2x; IF gLaxis > p1x THEN gLaxis := p1x; END; FUNCTION doMove(pObj:Handle):BOOLEAN; BEGIN GetBBox(pObj,p1x,p1y,p2x,p2y); HMove(pObj,(gRaxis+gLaxis-(p2x+p1x))/2,0); END; {main} BEGIN gCount:=0; gRaxis:=-10000000000.0; gLaxis:=10000000000.0; ForEachObjectInLayer(getRightAxis,2,0,4); IF gCount>1 THEN ForEachObjectInLayer(doMove,2,0,4); END; run (ajustObLcenter); 上下中央 Procedure ajustObHcenter; VAR gTaxis:REAL; gBaxis:REAL; gCount:INTEGER; p1x,p1y,p2x,p2y:REAL; FUNCTION getTopAxis(pObj:Handle):BOOLEAN; BEGIN gCount := gCount + 1; GetBBox(pObj,p1x,p1y,p2x,p2y); IF gTaxis < p1y THEN gTaxis := p1y; IF gBaxis > p2y THEN gBaxis := p2y; END; FUNCTION doMove(pObj:Handle):BOOLEAN; BEGIN GetBBox(pObj,p1x,p1y,p2x,p2y); HMove(pObj,0,(gTaxis+gBaxis-(p2y+p1y))/2); END; {main} BEGIN gCount:=0; gTaxis:=-10000000000.0; gBaxis:=10000000000.0; ForEachObjectInLayer(getTopAxis,2,0,4); IF gCount>1 THEN ForEachObjectInLayer(doMove,2,0,4); END; run (ajustObHcenter); 上下左右中央 Procedure ajustObLHcenter; VAR gRaxis:REAL; gLaxis:REAL; gTaxis:REAL; gBaxis:REAL; gCount:INTEGER; p1x,p1y,p2x,p2y:REAL; FUNCTION getCenterAxis(pObj:Handle):BOOLEAN; BEGIN gCount := gCount + 1; GetBBox(pObj,p1x,p1y,p2x,p2y); IF gRaxis < p2x THEN gRaxis := p2x; IF gLaxis > p1x THEN gLaxis := p1x; IF gTaxis < p1y THEN gTaxis := p1y; IF gBaxis > p2y THEN gBaxis := p2y; END; FUNCTION doMove(pObj:Handle):BOOLEAN; BEGIN GetBBox(pObj,p1x,p1y,p2x,p2y); HMove(pObj,(gRaxis+gLaxis-(p2x+p1x))/2,(gTaxis+gBaxis-(p2y+p1y))/2); END; {main} BEGIN gCount:=0; gRaxis:=-10000000000.0; gLaxis:=10000000000.0; ForEachObjectInLayer(getCenterAxis,2,0,4); IF gCount>1 THEN ForEachObjectInLayer(doMove,2,0,4); END; run (ajustObLHcenter);