How to convert a degrees calculation to radians? (

2019-07-31 22:50发布

I have tried to convert a calculation from an app I made using MIT AppInventor which uses Kawa to Android using Java.The problem I'm facing is that the trigonometric parts of the calculation in Kawa are using degress.My question is how do I translate this calculation to Java and get the same output?

This is how I do the calculation is Kawa,all variables are of type double:

 Tri 1=atan(Offset Depth/Offset Length)
 Mark 1=sqrt(Offset Length^2+Offset Depth^2)
 Tri 2=(180-Tri1)/2
 Mark 2=Duct Depth/(tan(Tri 2))

Then I did my best to translate it to Java code,the variables are double also as above,depth,length and duct depth are user input values.

 tri1 = Math.atan(offsetDepth / offsetLength);
 marking1 = Math.sqrt(Math.pow(offsetLength,2) + Math.pow(offsetDepth,2));  
 tri2 = (180 - tri1) / 2;
 marking2 = ductDepth / Math.tan(tri2);

Screenshot of what the inputs and outputs look like:

enter image description here

2条回答
一夜七次
2楼-- · 2019-07-31 23:45

You can convert the angles to radians yourself.

As we know:

180 degrees = PI radians

So:

1 degree = PI / 180 radians

So wherever you have X degrees,
they are equal to (X * PI / 180) radians.

In Java you have

Math.PI

which defines the value of the PI number.

Just change your Java code to this:

tri11 = Math.atan(1.0 * offsetDepth / offsetLength); // tri11 is radians
tri1 = tri11 * 180.0 / Math.PI; // tri1 is degrees
marking1 = Math.sqrt(Math.pow(1.0 * offsetLength,2) + Math.pow(1.0 * offsetDepth,2));  
tri2 = (180.0 - tri1) / 2.0; // tri2 is degrees
tri22 = tri2 * Math.PI / 180.0; // tri22 is radians
marking2 = 1.0 * ductDepth / Math.tan(tri22);
// output whatever you like now
查看更多
你好瞎i
3楼-- · 2019-07-31 23:45

You can use Math.toRadians() to convert degrees to radians.

查看更多
登录 后发表回答