Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to convert a degrees calculation to radians? (Kawa to Java)

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

like image 690
Brian Var Avatar asked Nov 28 '22 17:11

Brian Var


2 Answers

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

like image 70
Keppil Avatar answered Dec 15 '22 17:12

Keppil


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
like image 35
peter.petrov Avatar answered Dec 15 '22 17:12

peter.petrov