증강현실을 이용한 인공위성 탐색기를 만들고 있습니다

코딩에 거의 생초보 이고 외국에서 인턴 생활 중이라 여기에 여쭈어 봅니다 ..;;

 

카메라 preview 돌리는 거랑 gps 연결했구요

이제 나침반이 북쪽을 계속 가르키게 하는 작업(compass heading) 을 하고 있는데요

카메라 previw 위에 나침반이 가르키는 정수 값을 뽑아 내야 합니다 . 

아래 소스에서 heading 변수 값만 넘겨 받아 카메라 preview 위에 뽑아 내면 되는 건가요 ?

 

보통 나침반 소스 보면 수학적으로 계산을 많이 하는 거 같던데요 ...

조언 부탁 드립니다 ..

package com.anrian;

import android.app.Activity;
import android.content.Context;
import android.hardware.Sensor;
import android.hardware.SensorEvent;
import android.hardware.SensorEventListener;
import android.hardware.SensorManager;
import android.os.Bundle;

public class CompassHeading extends Activity implements SensorEventListener {
    /** Called when the activity is first created. */
 //CompassView2 compassView;
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        //compassView = new CompassView2(this);
        //setContentView(compassView);
        //시스템으로부터 센서 메니저 객체 얻어오기
        SensorManager sensorM = (SensorManager)getSystemService(Context.SENSOR_SERVICE);
        //센서값이 바뀔때마다 수정되야 하므로 리스너를 등록한다.
        //센서 리스너 객체(센서이벤트리스너 임플리먼츠), 센서타입, 센서 민감도를 매니져에 등록한다.
        sensorM.registerListener(this,//Activity가 직접 리스너를 구현
        sensorM.getDefaultSensor(Sensor.TYPE_ORIENTATION),
        SensorManager.SENSOR_DELAY_GAME);
    }
    
  //센서의 정확도가 바뀌었을때(호출될일 없음, 향후 업데이트를 위해서)
   public void onAccuracyChanged(Sensor sensor, int accuracy) {}
   
   //등록한 방향 센서 값이 바뀌었을 때 호출되는 콜백 메소드
   public void onSensorChanged(SensorEvent event) {
    //event 객체에 센서값에 대한 정보가 들어있다.
    switch(event.sensor.getType()){
    case Sensor.TYPE_ORIENTATION : //방향센서 값이 바뀌었을때
     int heading = (int)event.values[0];
     //헤딩값을 View에 반영한다.
     //compassView.updateUI(heading);    
     break;
    }
   }


 

공지 사항 다 읽었습니다 ..