ピクセルからタイル座標への変換

移動およびズームを実行し、特定のマップ タイル内のアイテムを見つけるには、ピクセルが含まれるタイルを判断できる必要があります。そのためには、座標がピクセル単位で指定されたら、クライアントが列と行、またはタイルを計算できる必要があります。このステップを実行し、ピクセルをタイル座標に変換するには、以下の計算を使用します。

  1. タイルの列を計算します。

    col = (pixelX ÷ tileWidth) + 1
  2. タイルの行を計算します。

    row = (pixelY ÷ tileHeight) + 1

ピクセルの位置は、画面スペースではなくマップのピクセル スペースに相対的であるということが重要です。画面上のマウス位置からピクセル座標を直接入力するのでは不十分な場合があります。例えば、マウス位置をマップのピクセル スペース内の位置に変換しなければならないことがあります。これにより、イメージ コントロールの右上隅を示すマップ ピクセル スペース内の位置が追跡され、マウス位置がその位置にオフセットされます。