GETSPOSによるZ値の変換
| World_Z | Screen_Z | 近似値 | INT(近似値) |
| 2 | 16777000 | 16777000.98 | 16777000 |
| 10 | 3354992 | 3354992.18 | 3354992 |
| 100 | 335040 | 335040.20 | 335040 |
| 200 | 167265 | 167265.09 | 167265 |
| 300 | 111340 | 111340.06 | 111340 |
| 400 | 83377 | 83377.54 | 83377 |
| 500 | 66600 | 66600.03 | 66600 |
| 600 | 55415 | 55415.02 | 55415 |
| 700 | 47425 | 47425.73 | 47425 |
| 800 | 41433 | 41433.76 | 41433 |
| 900 | 36773 | 36773.34 | 36773 |
| 1000 | 33045 | 33045.01 | 33045 |
| 2000 | 16267 | 16267.49 | 16267 |
| 3000 | 10674 | 10674.99 | 10674 |
| 4000 | 7878 | 7878.74 | 7878 |
| 5000 | 6200 | 6200.99 | 6200 |
| 6000 | 5082 | 5082.49 | 5082 |
| 7000 | 4283 | 4283.56 | 4283 |
| 8000 | 3684 | 3684.36 | 3684 |
| 9000 | 3218 | 3218.32 | 3218 |
| 10000 | 2845 | 2845.49 | 2845 |
| 20000 | 1167 | 1167.73 | 1167 |
| 30000 | 608 | 608.48 | 608 |
| 40000 | 328 | 328.86 | 328 |
| 50000 | 161 | 161.08 | 161 |
| 60000 | 49 | 49.23 | 49 |
| 65536 | 1 | 1.99 | 1 |
| 65663 | 1 | 1.00202 | 1 |
| 65664 | 0 | 0.99423 | 0 |

・World_Z:ワールド座標系におけるカメラ視線上の直線距離
・Screen_Z:GETSPOSによって得られるZ値
カメラ1の位置を(0,0,0)、回転角を(0,0,0)とした場合、
・GETSPOS Screen_X, Screen_Y, Screen_Z, 1, 0, 0, World_Z
という関係になります。
上記の変換式はWorld_Zが2以上の場合に適用されます。
2未満の場合は、若干の誤差はありますが、「16777200(最大値)」としてしまって、実用上ほとんど問題ないかと思われます。
また、World_Z = 2〜65664の各整数値において、11個の値について±1の誤差が生じます。
戻る