2

JavaScript で、ユーザー定義の角度で線を引こうとしています。

基本的に、次の点を作成するための点 (x,y) と角度があります。線の長さは 10px にする必要があります。

開始点が (180, 200) であるとしましょう... 角度 "A" を指定し、斜辺 (推測) が 10 の場合、X と Y を取得するための方程式はどうなるでしょうか。斜面?

ご協力いただきありがとうございます!

4

4 に答える 4

7

さて、基本的な三角法から...

sin A° = Y/10

cos A° = X/10

10^2 = Y^2 + X^2

于 2009-11-30T18:05:14.077 に答える
3

ドイル氏が冷笑的にほのめかしたように、数学はそれほど難しいものではありませんが、

1) 角度が何を参照しているか、座標がどの方向を向いているかを明確にしてください。ほとんどの単純な三角関数は、x が右に増加し、y がページに増加する従来のデカルト座標を扱っていることを前提としていますが、ほとんどの描画 API では、y がページに増加し、x が右に増加します。

2) 数学関数が度またはラジアンを必要とするかどうかを理解し、適切な引数を指定してください。

于 2009-11-30T18:06:44.360 に答える
2

H =斜辺(この例では10)と仮定すると、これは勾配の式です。

Y2 = H(Sin(A)) + Y1
   = 10(Sin(A)) + 200

X2 = Sqrt((H^2)-(Y2^2)) + X1
   = Sqrt(100 - (Y2^2)) + 180

だから今あなたは持っています

(180, 200) -> (X2, Y2)

ここで、X2、Y2は、AとHの値によって異なります。

計算を確認するには-A(ユーザーが入力したもの)は、X1、X2、Y1、およびY2の値を元の入力と結果の出力に置き換える勾配方程式を使用して計算できます。

A = InvTan((Y2 - Y1) / (X2 - X1))
  = InvTan((Y2 - 200) / (X2 - 180))
于 2009-11-30T18:41:38.097 に答える
1

問題を調べるより良い方法は、ベクトルを使用することです。

代替テキスト
(出典:equationsheet.com

次のようにベクトルを記述することもできます。

代替テキスト
(出典:equationsheet.com

どこ

代替テキスト
(出典:equationsheet.com

最初の値を 2 番目の値に等しく設定すると、開始点、角度、および距離が与えられた場合に終点を求めることができます。

代替テキスト
(出典:equationsheet.com

代替テキスト
(出典:equationsheet.com

于 2009-12-01T02:22:46.397 に答える