마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

방향센서 질문드립니다.

0 추천
 private class oriListener implements SensorEventListener {
        public void onSensorChanged(SensorEvent event) {  // 방향 센서 값이 바뀔때마다 호출됨
            ox.setText(Float.toString(event.values[0]));
            oy.setText(Float.toString(event.values[1]));
            oz.setText(Float.toString(event.values[2]));
            Log.i("SENSOR", "Orientation changed.");
            Log.i("SENSOR", "  Orientation X: " + event.values[0]
                          + ", Orientation Y: " + event.values[1]
                          + ", Orientation Z: " + event.values[2]);
        }
        
        public void onAccuracyChanged(Sensor sensor, int accuracy) {
            
        }
    }

안녕하세요

예제들을 찾아보니, 보통 방향을 구할때 가속도계와 지자기계를 쓰고 getRotationMatrix()에 가속도,자기장 값을 인자로 넣고,

getOrientation()으로 값을 구하는것 같은데요.

 

위 코드처럼 방향센서만 사용해도  azimuth, pitch, roll 값을 다 알수 있던데 가속도와 지자기로 구하는 이유가 뭐죠?

나침반 어플로 켜서 방향을 비교해 봤는데 같은것 같더라구요. 방향센서 만으로 정확하지 않기라도 한가요?

 

질문 요약.

1.보통 가속도와 지자기를 사용해서 방향을 구하는 이유가 있나요?

2.방향센서만으로 방향을 파악할 수 없는건가요?

3.나침반이라 하면 자기장을 이용해서 방향을 구하는데.. 바라보는 방위가 같을때 방향센서만으로 구한 값이랑 나침반 어플을 비교해보니, 둘다 큰 차이없는 값을 보이는데요. 그럼 방향센서 값자체가 이미 자기장으로 구한 거라고 보면 되나요(혹시 그게 아니라면 자기장을 이용하지 않고 어떻게 방향센서는 방향값을 구하는 건가요?)

 

sdfk123 (180 포인트) 님이 2015년 7월 6일 질문

답변 달기

· 글에 소스 코드 보기 좋게 넣는 법
· 질문에 대해 추가적인 질문이나 의견이 있으면 답변이 아니라 댓글로 달아주시기 바랍니다.
표시할 이름 (옵션):
개인정보: 당신의 이메일은 이 알림을 보내는데만 사용됩니다.
스팸 차단 검사:
스팸 검사를 다시 받지 않으려면 로그인하거나 혹은 가입 하세요.
...