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 |