Class LocationOverlay

  • All Implemented Interfaces:
    Pickable

    public final class LocationOverlay
    extends Overlay
    사용자의 현재 위치를 나타내는 오버레이. 이 오버레이는 지도에 단 하나만 존재하며, 인스턴스를 직접 생성할 수 없고 NaverMap.getLocationOverlay()를 이용해서 가져올 수 있습니다.

    위치 오버레이는 주 아이콘과 보조 아이콘, 원으로 구성됩니다.
    • 주 아이콘: 반드시 필요합니다. 이벤트를 받을 수 있습니다.
    • 보조 아이콘: 생략할 수 있습니다. 주 아이콘보다 약간 아래에 그려집니다. 이벤트를 받을 수 없습니다.
    • 원: 생략할 수 있습니다. 강조 효과를 위해 사용되며, 보조 아이콘 아래에 그려집니다. 이벤트를 받을 수 없습니다.
    • Field Detail

      • DEFAULT_CIRCLE_COLOR

        public static final int DEFAULT_CIRCLE_COLOR
        기본 원 색상. #0A1666F0.
      • DEFAULT_CIRCLE_RADIUS_DP

        @Dimension(unit=0)
        public static final int DEFAULT_CIRCLE_RADIUS_DP
        기본 원 반경. DP 단위.
        See Also:
        Constant Field Values
      • DEFAULT_ANCHOR

        @NonNull
        public static final android.graphics.PointF DEFAULT_ANCHOR
        기본 앵커. 가운데를 가리킵니다.
        See Also:
        setAnchor(PointF)
      • DEFAULT_SUB_ANCHOR

        @NonNull
        public static final android.graphics.PointF DEFAULT_SUB_ANCHOR
        기본 서브 앵커. 가운데 아래를 가리킵니다.
        See Also:
        setSubAnchor(PointF)
    • Method Detail

      • setMap

        @Deprecated
        public void setMap​(@Nullable
                           NaverMap map)
        Deprecated.
        LocationOverlay를 보이거나 숨기고 싶은 경우 Overlay.setVisible(boolean)을 호출하세요.
        LocationOverlay는 지도와 1:1 관계이므로 지도에 추가하거나 지도에서 제거할 수 없습니다. 호출하더라도 아무런 변화가 일어나지 않습니다.
        Overrides:
        setMap in class Overlay
        Parameters:
        map - 오버레이를 추가할 지도 객체.
      • getGlobalZIndex

        public int getGlobalZIndex()
        전역 Z 인덱스를 반환합니다. 여러 오버레이가 화면에서 겹쳐지면 전역 Z 인덱스가 큰 오버레이가 작은 오버레이를 덮습니다. 또한 값이 0 이상이면 오버레이가 심벌 위에, 0 미만이면 심벌 아래에 그려집니다.

        기본값은 DEFAULT_GLOBAL_Z_INDEX입니다.
        Overrides:
        getGlobalZIndex in class Overlay
        Returns:
        전역 Z 인덱스.
      • setGlobalZIndex

        public void setGlobalZIndex​(int globalZIndex)
        전역 Z 인덱스를 지정합니다. 여러 오버레이가 화면에서 겹쳐지면 전역 Z 인덱스가 큰 오버레이가 작은 오버레이를 덮습니다. 또한 값이 0 이상이면 오버레이가 심벌 위에, 0 미만이면 심벌 아래에 그려집니다.

        기본값은 DEFAULT_GLOBAL_Z_INDEX입니다.
        Overrides:
        setGlobalZIndex in class Overlay
        Parameters:
        globalZIndex - 전역 Z 인덱스.
      • getPosition

        @NonNull
        @UiThread
        public LatLng getPosition()
        오버레이의 좌표를 반환합니다.

        기본값은 지도의 초기 좌표입니다.
        Returns:
        좌표.
      • getBearing

        @UiThread
        public float getBearing()
        방위를 반환합니다. 방위가 북쪽일 경우 0도이며, 시계 방향으로 증가합니다.
        Returns:
        방위. 도 단위.
      • setBearing

        @UiThread
        public void setBearing​(float bearing)
        방위를 지정합니다. 방위가 북쪽일 경우 0도이며, 시계 방향으로 증가합니다.
        Parameters:
        bearing - 방위. 도 단위.
      • getIcon

        @NonNull
        @UiThread
        public OverlayImage getIcon()
        아이콘을 반환합니다.
        Returns:
        아이콘.
      • setIcon

        @UiThread
        public void setIcon​(@NonNull
                            OverlayImage icon)
        아이콘을 지정합니다.
        Parameters:
        icon - 아이콘.
      • getIconWidth

        @Px
        @UiThread
        public int getIconWidth()
        아이콘의 너비를 반환합니다. SIZE_AUTO일 경우 이미지의 너비를 따릅니다.

        기본값은 SIZE_AUTO입니다.
        Returns:
        너비. 픽셀 단위.
      • setIconWidth

        @UiThread
        public void setIconWidth​(@Px
                                 int width)
        아이콘의 너비를 지정합니다. SIZE_AUTO일 경우 이미지의 너비를 따릅니다.

        기본값은 SIZE_AUTO입니다.
        Parameters:
        width - 너비. 픽셀 단위.
      • getIconHeight

        @Px
        @UiThread
        public int getIconHeight()
        아이콘의 높이를 반환합니다. SIZE_AUTO일 경우 이미지의 높이를 따릅니다.

        기본값은 SIZE_AUTO입니다.
        Returns:
        px 높이. 픽셀 단위.
      • setIconHeight

        @UiThread
        public void setIconHeight​(@Px
                                  int height)
        아이콘의 높이를 지정합니다. SIZE_AUTO일 경우 이미지의 높이를 따릅니다.

        기본값은 SIZE_AUTO입니다.
        Parameters:
        height - 높이. 픽셀 단위.
      • getAnchor

        @NonNull
        @UiThread
        public android.graphics.PointF getAnchor()
        아이콘의 앵커를 반환합니다. 앵커는 아이콘 이미지에서 기준이 되는 지점을 의미합니다. 앵커로 지정된 지점이 오버레이의 좌표에 위치합니다. 값의 범위는 (0, 0)~(1, 1)이며, (0, 0)일 경우 이미지의 왼쪽 위, (1, 1)일 경우 이미지의 오른쪽 아래를 의미합니다.

        기본값은 DEFAULT_ANCHOR입니다.
        Returns:
        앵커.
      • setAnchor

        @UiThread
        public void setAnchor​(@NonNull
                              android.graphics.PointF anchor)
        아이콘의 앵커를 지정합니다. 앵커는 아이콘 이미지에서 기준이 되는 지점을 의미합니다. 앵커로 지정된 지점이 오버레이의 좌표에 위치합니다. 값의 범위는 (0, 0)~(1, 1)이며, (0, 0)일 경우 이미지의 왼쪽 위, (1, 1)일 경우 이미지의 오른쪽 아래를 의미합니다.

        기본값은 DEFAULT_ANCHOR입니다.
        Parameters:
        anchor - 앵커.
      • getSubIcon

        @Nullable
        @UiThread
        public OverlayImage getSubIcon()
        보조 아이콘을 반환합니다. null일 경우 보조 아이콘이 그려지지 않습니다.

        기본값은 null입니다.
        Returns:
        보조 아이콘.
      • setSubIcon

        @UiThread
        public void setSubIcon​(@Nullable
                               OverlayImage subIcon)
        보조 아이콘을 지정합니다. null일 경우 보조 아이콘이 그려지지 않습니다.

        기본값은 null입니다.
        Parameters:
        subIcon - 보조 아이콘.
      • getSubIconWidth

        @Px
        @UiThread
        public int getSubIconWidth()
        보조 아이콘의 너비를 반환합니다. SIZE_AUTO일 경우 이미지의 너비를 따릅니다.

        기본값은 SIZE_AUTO입니다.
        Returns:
        너비. 픽셀 단위.
      • setSubIconWidth

        @UiThread
        public void setSubIconWidth​(@Px
                                    int width)
        보조 아이콘의 너비를 지정합니다. SIZE_AUTO일 경우 이미지의 너비를 따릅니다.

        기본값은 SIZE_AUTO입니다.
        Parameters:
        width - 너비. 픽셀 단위.
      • getSubIconHeight

        @Px
        @UiThread
        public int getSubIconHeight()
        보조 아이콘의 높이를 반환합니다. SIZE_AUTO일 경우 이미지의 높이를 따릅니다.

        기본값은 SIZE_AUTO입니다.
        Returns:
        px 높이. 픽셀 단위.
      • setSubIconHeight

        @UiThread
        public void setSubIconHeight​(@Px
                                     int height)
        보조 아이콘의 높이를 지정합니다. SIZE_AUTO일 경우 이미지의 높이를 따릅니다.

        기본값은 SIZE_AUTO입니다.
        Parameters:
        height - 높이. 픽셀 단위.
      • getSubAnchor

        @NonNull
        @UiThread
        public android.graphics.PointF getSubAnchor()
        보조 아이콘의 앵커를 반환합니다. 앵커는 보조 아이콘 이미지에서 기준이 되는 지점을 의미합니다. 앵커로 지정된 지점이 오버레이의 좌표에 위치합니다. 값의 범위는 (0, 0)~(1, 1)이며, (0, 0)일 경우 이미지의 왼쪽 위, (1, 1)일 경우 이미지의 오른쪽 아래를 의미합니다.

        기본값은 DEFAULT_SUB_ANCHOR입니다.
        Returns:
        앵커.
      • setSubAnchor

        @UiThread
        public void setSubAnchor​(@NonNull
                                 android.graphics.PointF anchor)
        보조 아이콘의 앵커를 지정합니다. 앵커는 보조 아이콘 이미지에서 기준이 되는 지점을 의미합니다. 앵커로 지정된 지점이 오버레이의 좌표에 위치합니다. 값의 범위는 (0, 0)~(1, 1)이며, (0, 0)일 경우 이미지의 왼쪽 위, (1, 1)일 경우 이미지의 오른쪽 아래를 의미합니다.

        기본값은 DEFAULT_SUB_ANCHOR입니다.
        Parameters:
        anchor - 앵커.
      • getCircleRadius

        @Px
        @UiThread
        public int getCircleRadius()
        원의 반경을 반환합니다. 반경이 0일 경우 원이 그려지지 않습니다.

        기본값은 DEFAULT_CIRCLE_RADIUS_DP를 픽셀로 환산한 값입니다.
        Returns:
        원의 반경. 픽셀 단위.
      • setCircleRadius

        @UiThread
        public void setCircleRadius​(@Px
                                    int radius)
        원의 반경을 지정합니다. 반경이 0일 경우 원이 그려지지 않습니다.

        기본값은 DEFAULT_CIRCLE_RADIUS_DP를 픽셀로 환산한 값입니다.
        Parameters:
        radius - 원의 반경. 픽셀 단위.
      • getCircleColor

        @UiThread
        public int getCircleColor()
        원의 색상을 반환합니다.

        기본값은 DEFAULT_CIRCLE_COLOR입니다.
        Returns:
        원의 색상.
      • setCircleColor

        @UiThread
        public void setCircleColor​(int color)
        원의 색상을 반환합니다.

        기본값은 DEFAULT_CIRCLE_COLOR입니다.
        Parameters:
        color - 원의 색상.
      • getCircleOutlineWidth

        @Px
        @UiThread
        public int getCircleOutlineWidth()
        원의 테두리 두께를 반환합니다. 0일 경우 테두리가 그려지지 않습니다.

        기본값은 0입니다.
        Returns:
        두께. 픽셀 단위.
      • setCircleOutlineWidth

        @UiThread
        public void setCircleOutlineWidth​(@Px
                                          int width)
        원의 테두리 두께를 지정합니다. 0일 경우 테두리가 그려지지 않습니다.

        기본값은 0입니다.
        Parameters:
        width - 두께. 픽셀 단위.
      • getCircleOutlineColor

        @UiThread
        public int getCircleOutlineColor()
        원의 테두리 색상을 반환합니다.

        기본값은 Color.TRANSPARENT입니다.
        Returns:
        원의 테두리 색상.
      • setCircleOutlineColor

        @UiThread
        public void setCircleOutlineColor​(int color)
        원의 테두리 색상을 지정합니다.

        기본값은 Color.TRANSPARENT입니다.
        Parameters:
        color - 원의 테두리 색상.