記載されている利点:
頭に浮かぶいくつかの短所:
私は数学の男です。永続性とシェーダー形式の理由から、0..1または0..512のいずれかの度を使用することを好みます。 2年以上前に同じ質問をした場合、数学の意味で「純粋」であるため、ラジアンの方が優れていると言えます。
ただし、2 x Math.PIをファイルに保存することは問題(永続性)であり、「360」は2 * PIよりも書き込みが高速であるため、バイナリ形式で明確に表すことはできません。
フラッシュベースのエンジンは、次のように動作します。
http://cocos2d-x.org/docs/programmers-guide/sprites/index.html
https://www.youtube.com/watch?v=zAsDbHXlFWI
また、Spineのような編集者は、角度をラジアンで処理および保存します。
もう1つの奇妙なことは、グラフィックデザイナーのものであり、数学的な意味で「(shear.y、-shear.x)」であるSKEWを使用することです。このような嫌悪感を許容し、ユーザーに同時にradを使用するように強制します。
「低レベルレンダラー」と「独自のステージとツールをサポートする2Dグラフィックスレンダラー」の競合であり、pixiは2番目に近いと思います。
@englercj私もそのコードで作業する必要があります、私はすでに私のフォークにそのようなものを持っています: https :
https://github.com/gameofbombs/gobi/blob/master/src/core/math/FlatTransform2d.ts
@mreinstein pixi変換について何か知っているので、そのコードも確認するように依頼する必要があります;)
@bigtimebuddyと@GoodBoyDigitalからの提案により、APIを構成可能にします。
// useDegrees
CONVERSION = Math.PI / 180;
// useRadiens
CONVERSION = 1;
set rotation(rot)
{
this._rotation = rot * CONVERSION;
}
たぶんフェイザーのようにそれをしますか? 角度は度、回転はラジアンです。
@englercj同意します。 それが最も簡単な方法です。 pixiに基づくエンジンは、「変換」定数を修正するだけです。
@englercj Processingがこれを行いますが、これは本当に悪い設計上の決定だと思います。 それはモジュール性を傷つけます。 ある方法で何かを実行するコードが1つあり、他の方法を想定している別のコード(おそらくライブラリ内)を使用しようとすると、機能しません。 角度関連の関数を呼び出す前に必ず単位モードを設定すると、コードは確実に機能しますが、ライブラリコードが破損する可能性があります。 また、角度を使用するライブラリコードがある場合、角度モードを設定する必要がありますか? これにより、コードが意図したとおりに機能することが保証されますが、ユーザーのコードが破損する可能性があります。 これは、囚人のAPI設計のジレンマとほとんど同じです。
@OSUblakeそれはもっと合理的なようです。 角度と回転という名前は、ユニットを明示的に示したり禁止したりするものではありませんが、50/50の推測よりも合理的な関連付けが確実にあります。
angleDeg
とangleRad
方がいいと思います。 明示してみませんか?
角度は度、回転はラジアンです。
それはフェイザーがそれを行う方法かもしれませんが、それは普遍的に合意されていません。 回転はアクションであり、角度は発生したアクションの量です。 「回転角」と呼ばれることもあります。 したがって、技術的には、角度または回転は、同じものを参照するために過負荷になる可能性があり、いずれかの単位(度またはラジアン)で表すことができます。
回転を含む数学演算は、ラジアンを使用するとはるかに簡単になります。 把握するのはそれほど難しいことではありません。 Math.PIは円の中間にあります。 Math.PI * 2は完全な回転です。
度数が適切なのは、回転を伴う人々に視覚的なユーザーインターフェイスを公開し、聴衆が基本的なジオメトリを理解していないグループ(つまり、ほとんどの人々)である場合のみです。
私はこれが意見であることを認識していますが、ラジアンで行ってください。 javascriptのすべてのMathAPIは、ほとんどのおもちゃ以外のジオメトリライブラリと同様に、度ではなくラジアンで動作します。
本当にすべての人をサポートする必要がある場合は、 @ 1j01に同意して明示的にします。 たぶん.degrees
または.radians
?
この問題は、最近のアクティビティがないため、自動的に古いものとしてマークされています。 それ以上のアクティビティが発生しない場合は閉じられます。 貢献していただきありがとうございます。
このスレッドは、閉じられた後に最近のアクティビティがないため、自動的にロックされています。 関連するバグについては、新しい問題を開いてください。
最も参考になるコメント
たぶんフェイザーのようにそれをしますか? 角度は度、回転はラジアンです。