|
Delphiで絵を描く座標系とCADでの座標系については「絵の作図」の章で既に述べましたが、そのやり取りについて記述します。
まず、絵の座標系で、どこを原点にするかを決めます。例えば、画面中央を原点(0,0)とします。画面の横長さをX(dot)、縦長さをY(dot)とすると、画面中央は、(X/2,Y/2) となります。
(※ Delphiでの整数の割り算は、「/」の代わりに「div」を使用します)
1mm=1dot、つまり、mm_dot=1の場合。
mm座標値(X1,Y1)を dot座標値(X',Y')に変換する場合、X方向については同じ方向、Y方向については逆方向、という事に気を付けて、原点が画面中央に平行移動していると考えると
X'= X1+X/2
Y'=-Y1+Y/2
となります。逆に、dot座標値が分かっていてmm座標値に変換したい場合には、上記の式を逆にすればいいので、
X1= X'−X/2
Y1=-Y'+Y/2
となります。
次に、それでは、1mmが1dotではない場合は、
mm値 dot値
↓ ↓
X'= X1+X/2
Y'=-Y1+Y/2
mm値をdot値に変換しますので、前章により
○○(mm)×mm_dot=△△(dot)
ですから、
X'= X1×mm_dot+X/2
Y'=-Y1×mm_dot+Y/2
のようになります。
逆に、dot座標値が分かっていてmm座標値に変換したい場合には、上記の式を逆にすればいいので、
X'= X1×mm_dot+X/2
→ X1×mm_dot=X'−X/2
→ X1=( X'−X/2 )÷ mm_dot
Y'=-Y1×mm_dot+Y/2
→ Y1×mm_dot=-(Y'−Y/2)
→ Y1=-( Y'−Y/2 )÷ mm_dot
のようになります。
例えば、グラフを描くような場合でも、1目盛を何ドットで表現するかによって、グラフを細かく見るか大きく見るかが変わってきますが、CADでも同様に、この mm_dotを変更することによって、画面拡大・画面縮小を実現する事が出来ます。
また、mm座標値の原点をどこにするかで、画面移動を実現する事が出来ます。
【ソース・プログラム】
|
|
CAD装置(1)
CAD装置(2)
メディア
AutoCADの
DIESELマクロ
CSV
DXF
PCES
IGES
STEP
数学とCAD
CAD作ろ!
▲PREV
▼NEXT
|