Hi there, I am getting confused about how to work this out. I know that to convert cartesian coordinates to spherical coordinates you can use: theta=arccos(z) phi=arcsin(y/sin(theta)) my problem is that I have a list of coordinates, lets call them THETA and PHI. I change them into X,Y,Z and then rotate them by 2 Euler angles. THETA is in the range(0->2pi) PHI is in the range (-pi/2->pi/2). the problem is once I have completed the transforms I want the new value theta, As it is found using arccos the value returned is only in the range 0->pi, the values come back between 0 and 180, where as the THETA values are between 0 and 360, and therefore I want my transformed values to be in the range 0 to 360. I think I need to use quadrants but I have been searching the internet and can't find the info I need. Any help would be greatly appreciated.
Hi birdhen! (have a theta: θ and a phi: φ and a pi: π and a degree: º ) I normally do it the other way round … θ from -π/2 to π/2, and φ from 0 to 2π … then you have x = rsinθcosφ, y = rsinθsinφ, so you can use x as well as y to work out what φ is.
ah, thank you, so y/x=tanφ, and the value of φ will depend on whether x and y are negative or positve. Wonderful, that was the hint I needed, Thank you!