SensorManager.getRotationMatrix() 메서드 설명을 보면 rotation matrix와 inclination matrix를 구해준다고 하네요
rotation matrix는 기기의 좌표계를 지구좌표계로 변형시켜주는 matrix인데, inclination matrix는 무슨 행렬인가요?
그리고 설명 중간에 보면,
[0 0 g] = R * gravity
[0 m 0] = I * R * geomagnetic
가 있는데, 좌변이 1X3 행렬인가요?
g는 중력가속도를말하는 것같고, m은 지자기력을 말하는 것같은데, 왜 양변이 같게 되는지 모르겠네요.
public static boolean getRotationMatrix (float R, float I, float gravity, float geomagnetic)
Computes the inclination matrix I as well as the rotation matrix R transforming a vector from the device coordinate system to the world's coordinate system which is defined as a direct orthonormal basis, where:X is defined as the vector product Y.Z (It is tangential to the ground at the device's current location and roughly points East).Y is tangential to the ground at the device's current location and points towards the magnetic North Pole.Z points towards the sky and is perpendicular to the ground.
[0 0 g] = R * gravity (g = magnitude of gravity)
[0 m 0] = I * R * geomagnetic (m = magnitude of geomagnetic field)
R is the identity matrix when the device is aligned with the world's coordinate system, that is, when the device's X axis points toward East, the Y axis points to the North Pole and the device is facing the sky.
I is a rotation matrix transforming the geomagnetic vector into the same coordinate space as gravity (the world's coordinate space). I is a simple rotation around the X axis. The inclination angle in radians can be computed with