9ゲームの制作 VB6
 (2) タイルの配置 前へ 目次へ 次へ 

 1. 配置座標の計算

 タイルは図のように、3×3で配置する。

 2番目のタイルのTop(Y座標)は1番目のタイルと同じで、Left(X座標)は1番目のすぐ横である。ほかのタイルについても同じように考えると次のように分類できる。

Top(Y座標)
 タイル1, 2, 3 … 0行目
 タイル4, 5, 6 … 1行目
 タイル7, 8, 9 … 2行目
タイル1を基準にY座標を考えると次のような計算式になる。

タイルn.Top = タイル1.Top + タイル1の高さ * 行目

Left(X座標)
 タイル1, 4, 7… 0けた目
 タイル2, 5, 8… 1けた目
 タイル3, 6, 9… 2けた目
タイル1を基準にX座標を考えると次のような計算式になる。

タイルn.Left = タイル1.Left + タイル1の幅 * けた目

 タイルの番号と座標(行目とけた目)の関係を考えると、行目はタイルの番号から1を引いて3で割ったときの答え(整数部)と一致する。同じようにけた目はタイルの番号から1を引いて3で割ったときの余りと一致する。
 タイルnの座標の計算式は次のようになる。

cmdTile(n).Top = cmdTile(1).Top + cmdTile(1).Height * Int((n - 1) / 3)
cmdTile(n).Left = cmdTile(1).Left + cmdTile(1).Width * ((n - 1) Mod 3)


 (2) タイルの配置 前へ 目次へ 次へ 
Copyright © 2001,2002 Hiroshi Masuda 

 

 

inserted by FC2 system