RoadView

로드뷰를 실행하고 지도와 같이 사용하는 방법을 확인 할 수 있습니다.

로드뷰 사용은 별도의 협의가 필요합니다.

1. RoadView 시작하기


KakaoMap 을 시작하는 것처럼 RoadViewReadyCallback 을 구현해서 아래와 같이 로드뷰를 시작합니다. RoadViewReadyCallback 의 getRoadViewRequest 의 구현 여부에 따라 로드뷰를 바로 나오게 할 수도 있고, API 실행 후 로드뷰를 나오게 할 수도 있습니다.

// 1. 로드뷰 API 실행과 동시에 로드뷰 띄우기
MapView mapView = findViewById(R.id.map_view);
mapView.start(new RoadViewReadyCallback() {

    @Override
    public RoadViewRequest getRoadViewRequest() {
        return new RoadViewRequest(LatLng.from(37.401722, 127.109668));
    }

    @Override
    public void onRoadViewReady(@NonNull RoadView roadView) {
        roadView.setOnRoadViewRequestListener(RoadViewStartActivity.this);
    }
});
// 2. 로드뷰 API 실행 후 로드뷰 띄우기
MapView mapView = findViewById(R.id.map_view);
mapView.start(new RoadViewReadyCallback() {

    @Override
    public void onRoadViewReady(@NonNull RoadView roadView) {
        roadView.setOnRoadViewRequestListener(RoadViewStartActivity.this);
        roadView.requestRoadView(new RoadViewRequest(LatLng.from(37.401722, 127.109668)));
    }
});

2. 로드뷰 요청하기 - RoadViewRequest


roadView.requestRoadView(RoadViewRequest) 를 통해 로드뷰를 어디에서 어떤 방향으로 바라보게 할지 설정 할 수 있습니다.

Property Description
panoramaId 로드뷰의 위치 Id
panoramCoord 로드뷰의 위치
lookAtPosition 바라보는 방향의 위치
lookAtPan 바라보는 회전 방향 값 (radian)
lookAtTilt 바라보는 기울기 값 (radian)
defaultSearchRange 로드뷰 데이터 검색 반경. 디폴트는 100.
extendedSearchRange defatulSearchRange 에서 확장된 로드뷰 데이터 검색 반경. 디폴트는 400.

요청한 로드뷰 이벤트 수신

// 로드뷰 데이터 요청 이벤트 리스너
roadView.setOnRoadViewRequestListener(new RoadView.OnRoadViewRequestListener() {
    @Override
    public void onRoadViewResultReceived(String panoramaId, LatLng position, List<RoadViewByDate> roadViews) {
        // 로드뷰 데이터 요청이 성공했을 때 
    }

    @Override
    public void onRoadViewRequestFailed(String message) {
        // 로드뷰 데이터 요청이 실패했을 때
    }
});

// 로드뷰 데이터 요청
roadView.requestRoadView(new RoadViewRequest(LatLng.from(37.401722, 127.109668)));