Class InaviMap

java.lang.Object
com.inavi.mapsdk.maps.InaviMap

public final class InaviMap extends Object

아이나비 지도 SDK의 기본 클래스이며, 지도와 관련된 모든 함수의 진입점입니다.

InvMapFragment 또는 InaviMapgetMapAsync() 함수 호출을 통해서만 인스턴스를 얻을 수 있습니다.
See Also:
  • Method Details

    • setMapType

      public void setMapType(InaviMap.MapType mapType)
      지도의 유형을 설정합니다.

      기본값은 InaviMap.MapType.Normal입니다.

      Parameters:
      mapType - 지도 유형
    • getMapType

      public InaviMap.MapType getMapType()
      지도에 설정된 지도 유형을 반환합니다.

      기본값은 InaviMap.MapType.Normal입니다.

      Returns:
      지도 유형
    • setCustomMapStyle

      public void setCustomMapStyle(MapStyle customMapStyle)
      지도에 커스텀 지도 스타일 적용을 시도합니다.

      적용하려는 지도 스타일이 InaviMapSdk.getSavedCustomMapStyles()에 존재하지 않거나 null로 설정할 경우 기본 지도 스타일이 적용됩니다.
      커스텀 스타일 적용 시 건물 3D 효과, 셰이프 전역 Z 인덱스, 지도 심볼 Scale 기능은 제한적으로 지원되거나 지원되지 않습니다. 추후 업데이트를 통해 지원될 예정입니다.
      기본값은 null입니다.

      Parameters:
      customMapStyle - 커스텀 지도 스타일
    • getCustomMapStyle

      public MapStyle getCustomMapStyle()
      지도에 설정된 커스텀 지도 스타일을 반환합니다.

      기본값은 null입니다.

      Returns:
      커스텀 지도 스타일
    • setMinZoom

      public void setMinZoom(double minZoom)
      지도의 최소 줌 레벨을 설정합니다.

      카메라 업데이트와 제스처 제한에 적용됩니다.

      Parameters:
      minZoom - 최소 줌 레벨
    • getMinZoom

      public double getMinZoom()
      지도의 최소 줌 레벨을 반환합니다.

      카메라 업데이트와 제스처 제한에 적용됩니다.

      Returns:
      최소 줌 레벨
    • setMaxZoom

      public void setMaxZoom(double maxZoom)
      지도의 최대 줌 레벨을 설정합니다.

      카메라 업데이트와 제스처 제한에 적용됩니다.

      Parameters:
      maxZoom - 최대 줌 레벨
    • getMaxZoom

      public double getMaxZoom()
      지도의 최대 줌 레벨을 반환합니다.

      카메라 업데이트와 제스처 제한에 적용됩니다.

      Returns:
      최대 줌 레벨
    • getMinTilt

      public double getMinTilt()
      지도의 최소 기울기 각도를 반환합니다. (도 단위)

      카메라 업데이트와 제스처 제한에 적용됩니다.

      기본값은 InvConstants.MINIMUM_TILT입니다.

      Returns:
      최소 기울기 각도
    • setMinTilt

      public void setMinTilt(double minTilt)
      지도의 최소 기울기 각도를 설정합니다. (도 단위)

      카메라 업데이트와 제스처 제한에 적용됩니다.

      기본값은 InvConstants.MINIMUM_TILT입니다.

      Parameters:
      minTilt - 최소 기울기 각도.
    • getMaxTilt

      public double getMaxTilt()
      지도의 최대 기울기 각도를 반환합니다. (도 단위)

      카메라 업데이트와 제스처 제한에 적용됩니다.

      기본값은 InvConstants.MAXIMUM_TILT입니다.

      Returns:
      최대 기울기 각도
    • setMaxTilt

      public void setMaxTilt(double maxTilt)
      지도의 최대 기울기 각도를 설정합니다. (도 단위)

      카메라 업데이트와 제스처 제한에 적용됩니다.

      기본값은 InvConstants.MAXIMUM_TILT입니다.

      Parameters:
      maxTilt - 최대 기울기 각도.
    • getSymbolScale

      public double getSymbolScale()
      지도 심벌의 크기를 반환합니다. (배율 단위)

      배율의 범위는 0.0~2.0이며, 1.5로 설정하면 지도 심벌이 1.5배의 크기로 표출됩니다.

      기본값은 1.0입니다.

      Returns:
      지도 심벌의 크기.
    • setSymbolScale

      public void setSymbolScale(double scale)
      지도 심벌의 크기를 설정합니다. (배율 단위)

      배율의 범위는 0.0~2.0이며, 1.5로 설정하면 지도 심벌이 1.5배의 크기로 표출됩니다.

      기본값은 1.0입니다.

      Parameters:
      scale - 지도 심벌의 크기.
    • getUiSettings

      public UiSettings getUiSettings()
      지도의 사용자 인터페이스를 관리하는 UiSettings 객체를 반환합니다.
      Returns:
      UiSettings 객체
    • getProjection

      public Projection getProjection()
      위경도 좌표와 화면 좌표간 변환을 할 수 있는 Projection 객체를 반환합니다.
      Returns:
      Projection 객체
    • cancelTransitions

      public void cancelTransitions()
      진행 중인 지도 이동 애니메이션을 취소합니다.
    • getVisibleBounds

      public final LatLngBounds getVisibleBounds()
      현재 지도의 LatLngBounds를 반환합니다.
      Returns:
      현재 지도의 LatLngBounds
    • getCameraPosition

      public final CameraPosition getCameraPosition()
      현재 지도 영역 중심의 카메라의 위치를 가져옵니다.
      Returns:
      현재 지도 영역 중심의 CameraPosition 객체
    • setCameraPosition

      public void setCameraPosition(CameraPosition cameraPosition)
      현재 지도 영역 중심의 카메라 위치를 바로 설정합니다.

      애니메이션은 적용은 moveCamera(CameraUpdate)로 가능합니다.

      Parameters:
      cameraPosition - 설정할 CameraPosition 객체
    • moveCamera

      public final void moveCamera(CameraUpdate update)
      CameraUpdate를 이용해 카메라를 이동합니다.
      Parameters:
      update - CameraUpdate 객체
    • getHeight

      public float getHeight()
      지도 뷰의 높이를 반환합니다.
      Returns:
      지도 뷰의 높이 (픽셀 단위)
    • getWidth

      public float getWidth()
      지도 뷰의 화면상 너비를 반환합니다.
      Returns:
      지도 뷰의 너비 (픽셀 단위)
    • setConstraintBounds

      public void setConstraintBounds(LatLngBounds latLngBounds)

      지도 이동을 제한할 LatLngBounds 영역을 설정합니다.

      null로 설정할 경우 제한이 해제됩니다.
      Parameters:
      latLngBounds - 지도 이동을 제한할 LatLngBounds 영역.
    • getConstraintBounds

      public LatLngBounds getConstraintBounds()
      설정된 지도 이동을 제한하는 LatLngBounds 영역을 반환합니다.
      Returns:
      지도 이동을 제한하는 LatLngBounds 영역
    • getCameraFitBounds

      public CameraPosition getCameraFitBounds(LatLngBounds bounds)
      특정 LatLngBounds 전체 영역이 보이는 중심 좌표와 줌 레벨을 포함하는 CameraPosition 객체를 반환합니다.
      Parameters:
      bounds - LatLngBounds 객체
      Returns:
      CameraPosition 객체
    • getCameraFitBounds

      public CameraPosition getCameraFitBounds(LatLngBounds bounds, int paddingLeft, int paddingTop, int paddingRight, int paddingBottom)
      특정 LatLngBounds 전체 영역이 보이는 중심 좌표와 줌 레벨을 포함하는 CameraPosition 객체를 반환합니다.
      Parameters:
      bounds - LatLngBounds 객체
      paddingLeft - 왼쪽 패딩 값 (픽셀 단위)
      paddingTop - 위쪽 패딩 값 (픽셀 단위)
      paddingRight - 오른쪽 패딩 값 (픽셀 단위)
      paddingBottom - 아래쪽 패딩 값 (픽셀 단위)
      Returns:
      CameraPosition 객체
    • setPadding

      public void setPadding(int left, int top, int right, int bottom)
      지도의 패딩을 설정합니다.

      카메라 위치와 영역에 적용됩니다.

      Parameters:
      left - 왼쪽 패딩 (픽셀 단위)
      top - 위쪽 패딩 (픽셀 단위)
      right - 오른쪽 패딩 (픽셀 단위)
      bottom - 아래쪽 패딩 (픽셀 단위)
    • getPadding

      public int[] getPadding()
      지도에 설정된 패딩을 반환합니다.

      왼쪽 / 위쪽 / 오른쪽 / 아래쪽 순서로 배열이 반환됩니다. (픽셀 단위)

      Returns:
      패딩 배열 (픽셀 단위)
    • addOnCameraIdleListener

      public void addOnCameraIdleListener(InaviMap.OnCameraIdleListener listener)
      카메라 이동이 끝났을 때 호출되는 콜백을 추가합니다.
      Parameters:
      listener - InaviMap.OnCameraIdleListener 객체
    • removeOnCameraIdleListener

      public void removeOnCameraIdleListener(InaviMap.OnCameraIdleListener listener)
      카메라 이동이 끝났을 때 호출되는 콜백을 제거합니다.
      Parameters:
      listener - InaviMap.OnCameraIdleListener 객체
    • addOnCameraChangeListener

      public void addOnCameraChangeListener(InaviMap.OnCameraChangeListener listener)
      카메라 위치가 변경될 때 호출되는 콜백을 추가합니다.
      Parameters:
      listener - InaviMap.OnCameraChangeListener 객체
    • removeOnCameraChangeListener

      public void removeOnCameraChangeListener(InaviMap.OnCameraChangeListener listener)
      카메라 위치가 변경될 때 호출되는 콜백을 제거합니다.
      Parameters:
      listener - InaviMap.OnCameraChangeListener 객체
    • addOnUserTrackingModeChangedListener

      public void addOnUserTrackingModeChangedListener(OnUserTrackingModeChangedListener listener)
      사용자 위치 추적 모드가 변경될 때 호출되는 콜백을 추가합니다.
      Parameters:
      listener - OnUserTrackingModeChangedListener 객체
    • removeOnUserTrackingModeChangedListener

      public void removeOnUserTrackingModeChangedListener(OnUserTrackingModeChangedListener listener)
      사용자 위치 추적 모드가 변경될 때 호출되는 콜백을 제거합니다.
      Parameters:
      listener - OnUserTrackingModeChangedListener 객체
    • addOnLocationChangedListener

      public void addOnLocationChangedListener(LocationProvider.OnLocationChangedListener listener)
      사용자 위치가 변경될 때 호출되는 콜백을 추가합니다.
      Parameters:
      listener - LocationProvider.OnLocationChangedListener 객체
    • removeOnLocationChangedListener

      public void removeOnLocationChangedListener(LocationProvider.OnLocationChangedListener listener)
      사용자 위치가 변경될 때 호출되는 콜백을 제거합니다.
      Parameters:
      listener - LocationProvider.OnLocationChangedListener 객체
    • getOnMapClickListener

      public InaviMap.OnMapClickListener getOnMapClickListener()
      사용자가 지도를 클릭할 때 호출되는 콜백을 반환합니다.
      Returns:
      InaviMap.OnMapClickListener 객체
    • setOnMapClickListener

      public void setOnMapClickListener(InaviMap.OnMapClickListener listener)
      사용자가 지도를 클릭할 때 호출되는 콜백을 설정합니다.
      Parameters:
      listener - - InaviMap.OnMapClickListener 객체
    • getOnMapLongClickListener

      public InaviMap.OnMapLongClickListener getOnMapLongClickListener()
      사용자 지도를 롱 클릭 할 때 호출되는 콜백을 반환합니다.
      Returns:
      InaviMap.OnMapLongClickListener 객체
    • setOnMapLongClickListener

      public void setOnMapLongClickListener(InaviMap.OnMapLongClickListener listener)
      사용자 지도를 롱 클릭 할 때 호출되는 콜백을 설정합니다.
      Parameters:
      listener - InaviMap.OnMapLongClickListener 객체
    • getOnMapDoubleClickListener

      public InaviMap.OnMapDoubleClickListener getOnMapDoubleClickListener()
      사용자 지도를 더블 클릭 할 때 호출되는 콜백을 반환합니다.
      Returns:
      InaviMap.OnMapDoubleClickListener 객체
    • setOnMapDoubleClickListener

      public void setOnMapDoubleClickListener(InaviMap.OnMapDoubleClickListener listener)
      사용자 지도를 더블 클릭 할 때 호출되는 콜백을 설정합니다.
      Parameters:
      listener - InaviMap.OnMapDoubleClickListener 객체
    • setLocationProvider

      public void setLocationProvider(LocationProvider locationProvider)

      사용자 위치 프로바이더를 설정합니다.

      null로 설정할 경우 위치 추적 모드가 UserTrackingMode.None으로 변경됩니다.
      Parameters:
      locationProvider - 사용자 위치 프로바이더
    • getLocationProvider

      public LocationProvider getLocationProvider()
      사용자 위치 프로바이더를 반환합니다.
      Returns:
      사용자 위치 프로바이더
    • setUserTrackingMode

      public void setUserTrackingMode(UserTrackingMode userTrackingMode)

      사용자 위치 추적 모드를 설정합니다.

      사용자 위치 프로바이더가 설정되어 있지 않으면 위치 추적 모드가 변경되지 않습니다.
      기본값은 사용 안 함(UserTrackingMode.None) 입니다.
      Parameters:
      userTrackingMode - UserTrackingMode 위치 추적 모드
      See Also:
    • getUserTrackingMode

      public UserTrackingMode getUserTrackingMode()

      현재 사용자 위치 추적 모드를 반환합니다.

      기본값은 사용 안 함(UserTrackingMode.None) 입니다.
      Returns:
      UserTrackingMode 사용자 위치 추적 모드
      See Also:
    • getLocationIcon

      public LocationIcon getLocationIcon()
      현위치 아이콘을 반환합니다.
      Returns:
      현위치 아이콘
    • clearShapes

      public void clearShapes()
      지도에 등록된 모든 셰이프를 지도에서 제거합니다.
      See Also:
    • pickPois

      public List<Poi> pickPois(RectF rectF)
      특정 화면 영역에 표출되는 POI의 정보를 Poi 객체 List로 반환합니다.
      Parameters:
      rectF - 화면 영역.
      Returns:
      Poi 객체 List