0

Java アプレットの OpenGL シミュレーションがあり、HTML5 キャンバスに変換しようとしています。これらの座標を変換する方法を知っている人はいますか?

OpenGL は -400x から +400x まで、-600y から +600y まで取得できますが、キャンバスは 0x から 400x まで、0y から 600y まで負の座標なしで取得できます。

4

1 に答える 1

0

これは、必要な単純な線形関数です。線形関数の形式はf(x) = m * x + n

x 座標の場合:

-400 を 0 に、400 を 400 にマッピングしたいので、線形関係を表す 2 つのポイント (-400, 0)、(400, 400) が得られます。

(y2-y1)/(x2-x1) で勾配 m を計算します。この例では、m = (400-0)/(400--400) = 1/2 です。

したがって、関数は次のようになります: f(x) = 1/2 * x + n

n (y 切片) を計算するには、ポイントを挿入するだけです (例: (-400, 0)):

0 = 1/2 * (-400) + n

n は 200 となります。したがって、最終的な関数は次のようになります。f(x) = 1/2 * x + 200

あなたが得るy座標についてg(y) = 1/2 * y + 300

于 2011-07-29T10:37:30.293 に答える