2013-05-30 3 views

답변

2

CMMotionManager

CMMotionManager가 NSOperationQuee 작동 수직 수직 위치로 개최되고있다. CMMotionManager는 startAccelerometerUpadatesToQueue : withHandler 메소드를 제공하여 코어 모션 데이터 수집을 시작합니다. 그리고이 메서드는 NSOperationQueue와 CMAccelerometerHandler 형식과 호환되는 실행 블록을 구현하여 스레드 된 컨텍스트를 사용합니다.

코어 모션 데이터는 항상 라디안으로 제공됩니다. 학위를 원하면 다음 수식을 사용하여 데이터를 변환해야합니다.

CGFloat DegreesToRadians (CGFloat degrees) { return degrees * M_PI/180; };

CGFloat RadiansToDegrees (CGFloat 라디안) { return radians * 180/M_PI; };

+1

내가 알고 있지만 문제는 내가 XY 평면에있는 장치를 기울이면 아무 것도 가속 데이터에서 변하지 않는다는 것입니다. – Abhigyan

+0

iPhone 개발 경험이 없습니다. 추가 세부 사항을 파헤 치기위한 포인터를 제공하기 위해 자이로 스코프 센서를 사용하는 것이 좋습니다. 일반적으로 자이로 스코프 센서는 세 축을 따라 장치의 방향을 변경합니다. 행운을 빕니다 :) – Luqman