私はJSの数学で作業していますが、trig関数はラジアン値の代わりに度数を使用したいと考えています。どうすればいい?sin、cos、tanにラジアンの代わりに度を使用するにはどうすればよいですか?
答えて
あなたは、変換を行うために、このような関数を使用することができます。あなたがtan(toRadians(45))
ような何かをするために使用することができ
function toRadians (angle) {
return angle * (Math.PI/180);
}
:このようなラジアン程度の入力を、変換機能を持っているあなたに、より有用であろうと私には思えます。
結果にを掛けてラジアンから度に変換します。
また、独自の関数を定義することができます。
function sinDegrees(angle) {return Math.sin(angle/180*Math.PI);};
のように。 sin
ように機能
function toDegrees (angle) {
return angle * (180/Math.PI);
}
注意、cos
を、そしてそうに角度を返さない、彼らは、入力として角度を取る:
混乱を避けるために、これは本当に 'sinDegrees'という名前にしてください。 –
真。私はいくつかのサイトが 'sind'を短くして呼び出すのを見てきました。私は個人的には「罪」を維持しています。なぜなら、「罪」は度で、「Math.sin」はラジアンであることを知っているからです。しかし、それは私自身の頭にあります。 –
-1:sin()は角度を返しません。入力引数は角度です。 –
必要な数式を適用して、それらを代わりに呼び出す独自の変換関数を作成します。 http://en.wikipedia.org/wiki/Radian#Conversion_between_radians_and_degrees
であることを示していますが、これは理論的に質問に答えるかもしれませんが[http:// meta。 stackexchange.com/q/8259)ここに回答の重要な部分を含めて、参考のためのリンクを提供してください。 –
私はそれが役に立てば幸い、学位のために私自身の小さな怠惰な数学・オブジェクト(MathD)を作成しました:
//helper
/**
* converts degree to radians
* @param degree
* @returns {number}
*/
var toRadians = function (degree) {
return degree * (Math.PI/180);
};
/**
* Converts radian to degree
* @param radians
* @returns {number}
*/
var toDegree = function (radians) {
return radians * (180/Math.PI);
}
/**
* Rounds a number mathematical correct to the number of decimals
* @param number
* @param decimals (optional, default: 5)
* @returns {number}
*/
var roundNumber = function(number, decimals) {
decimals = decimals || 5;
return Math.round(number * Math.pow(10, decimals))/Math.pow(10, decimals);
}
//the object
var MathD = {
sin: function(number){
return roundNumber(Math.sin(toRadians(number)));
},
cos: function(number){
return roundNumber(Math.cos(toRadians(number)));
},
tan: function(number){
return roundNumber(Math.tan(toRadians(number)));
},
asin: function(number){
return roundNumber(toDegree(Math.asin(number)));
},
acos: function(number){
return roundNumber(toDegree(Math.acos(number)));
},
atan: function(number){
return roundNumber(toDegree(Math.atan(number)));
}
};
私はより一般的な機能的なアプローチが好き:
/**
* converts a trig function taking radians to degrees
* @param {function} trigFunc - eg. Math.cos, Math.sin, etc.
* @param {number} angle - in degrees
* @returns {number}
*/
const dTrig = (trigFunc, angle) => trigFunc(angle * Math.PI/180);
または、
をfunction dTrig(trigFunc, angle) {
return trigFunc(angle * Math.PI/180);
}
これは、任意のラジアンを取り込む関数で使用できます。
dTrig(Math.sin, 90);
// -> 1
dTrig(Math.tan, 180);
// -> 0
希望します。
- 1. Pygame sin、cos、tan caculating circular movement path
- 2. SinとCosをJavaでどのように四角形にしますか?
- 3. ストアドプロシージャにAdo.netの代わりにEntity Frameworkを使用するにはどうすればよいですか?
- 4. PDF :: API2にRGBの代わりにCMYKを使用するにはどうすればよいですか?
- 5. 私のソフトウェアアプリケーションを、HSMの代わりにPKCSを使用するにはどうすればよいですか?
- 6. DOMの代わりにHTML文書でjQueryを使用するにはどうすればよいですか?
- 7. Mapbox Geocoderの代わりにMapboxでandroid Geocoderを使用するにはどうすればよいですか?
- 8. map-getでvalueの代わりにキー名を使用するにはどうすればよいですか?
- 9. ユーレカでホスト名の代わりにIPアドレスを使用するにはどうすればよいですか?
- 10. switch文の代わりに関数ポインタを使用するにはどうすればよいですか?
- 11. フォーム送信の代わりにjQuery Post/Ajaxを使用するにはどうすればよいですか?
- 12. 要素IDの代わりに "this"キーワードを使用するにはどうすればよいですか?
- 13. 変数の代わりに文字列名を使用するにはどうすればよいですか?
- 14. click()の代わりにclickAt()コマンドを使用するにはどうすればよいですか?
- 15. Darwinリンカの代わりにGNUリンカを使用するにはどうすればよいですか?
- 16. リスト配列の代わりにセットを使用するにはどうすればよいですか?
- 17. infwindowの代わりにinfoboxを使用するにはどうすればよいですか?
- 18. iframeの代わりにAJAXを使用するにはどうすればよいですか?
- 19. jQuery:「jQuery」の代わりに「$」を使用するにはどうすればよいですか?
- 20. reallocの代わりにstd :: allocatorを使用するにはどうすればよいですか?
- 21. リテラル文字列の代わりに変数を使用するにはどうすればよいですか?
- 22. プリズム(CAL)で、RegisterViewWithRegionの代わりにRegisterPresenterWithRegionを使用するにはどうすればいいですか?
- 23. Aptana Studioでスペースの代わりにタブを使用するにはどうすればいいですか?
- 24. 選択フォームでimgの代わりにiconを使用するにはどうすればいいですか?
- 25. OpenSSLでhttpsの代わりにhttpを使用するにはどうすればいいですか?
- 26. LoadLevelの代わりに、SceneManagerを使用するにはどうすればいいですか
- 27. 2015の代わりにビジュアルスタジオ2017を使用するにはどうすればいいですか?
- 28. どうすれば使えますか? ||の代わりに&&?
- 29. sin、cos、およびその他の関数を使って式を評価するにはどうすればよいですか?
- 30. Android:廃止予定の機能(getwidth())を使用する代わりに、どうすればよいですか?
sin/cos/tanは角度をラジアンで返しません。彼らはラジアンで角度をとる。逆関数 'atan()'、 'atan2()'、 'acos()'、 'asin()'は角度を返します。 –