본문 바로가기
안드로이드

[Android Studio] 네이버 맵 Polygon 사용해보기 !

by 개발_블로그 2022. 12. 6.
반응형

 오늘은 네이버맵의 Polygon 을 사용하는 예제를 포스팅 해보겠습니다. 아주 간단히 포스팅해보겠습니다. 

기본 설정같은 경우에는 이전에 포스팅한 글들이 있으니 넘어가도록 하겠습니다. 

https://jangstory.tistory.com/40

 

[Android / Kotlin] 네이버 Map API 간단히 사용하기

네이버 Map API 를 사용해보도록 하겠습니다! https://www.ncloud.com/ NAVER CLOUD PLATFORM cloud computing services for corporations, IaaS, PaaS, SaaS, with Global region and Security Technology Certification www.ncloud.com 회원가입을하

jangstory.tistory.com

 

그럼 기본 베이스들(gradle 추가 ,네이버맵 프래그먼트 , onMapReady() 등) 은 되어있다고 생각하고 넘어가 보도록 하겠습니다 ! 

 

네이버맵 SDK 에도 잘 나와있으니 한번 보고오시면 좋습니다! 

https://navermaps.github.io/android-map-sdk/guide-ko/1.html

 

시작하기 · 네이버 지도 안드로이드 SDK

No results matching ""

navermaps.github.io

 

일단 자신이 어떤 좌표에다가 Polygon을 그려야 할지 설정을 해야겠죠 .

private val COORDS = listOf(
    LatLng(37.5640984, 126.9712268),
    LatLng(37.5651279, 126.9767904),
    LatLng(37.5625365, 126.9832241),
    LatLng(37.5585305, 126.9809297),
    LatLng(37.5590777, 126.974617),
)

 

이런식으로 좌표값을 설정해줍니다. 

 

이제 Polygon 을 그려보도록 하겠습니다 .

PolygonOverlay().also {
    it.coords = COORDS // 처음에 설정해 주었던 좌표값
    it.color = Color.parseColor(원하는 색상)
    it.outlineColor = color //테두리 라인 색상
    it.outlineWidth = 2 //테두리 라인 굵기 설정 
    it.map = naverMap
}

 

이렇게 설정해주고  onMapReady() 안에 넣어주던가 원하는 시점에 넣어주면 됩니다. 주의할 점은 네이버 맵이 초기화 되고 난 후에 

Polygon 을 그려야 된다는 점 입니다! .

 

저렇게 설정을 했을 때 색상때문에 지도가 안보이게 되니 색상의 투명도를 주어야겠죠? 

 

PolygonOverlay().also {
    it.coords = COORDS // 처음에 설정해 주었던 좌표값
    it.color = 
    ColorUtils.setAlphaComponent(
           Color.parseColor(원하는 색상), 12 // 투명도 설정 값. 높을 수록 진해짐 
    ) 
    it.outlineColor = color //테두리 라인 색상
    it.outlineWidth = 2 //테두리 라인 굵기 설정 
    it.map = naverMap
}

 

이런식으로 설정해주면 지도의 색상이 투명해져서 지도가 보여지게 됩니다! 

마지막으로 HOLE 을 넣어서 지정된 좌표값 안에 HOLE 을 만들어 보겠습니다!  

 

 

private val HOLES = listOf(
    listOf(
        LatLng(37.5612243, 126.9768938),
        LatLng(37.5627692, 126.9795502),
        LatLng(37.5628377, 126.976066),
    )
)

 

 

HOLE 의 좌표값을 설정해줍니다. 

 

PolygonOverlay().also {
	it.holes = HOLES // 홀 설정
    it.coords = COORDS // 처음에 설정해 주었던 좌표값
    it.color = 
    ColorUtils.setAlphaComponent(
           Color.parseColor(원하는 색상), 12 // 투명도 설정 값. 높을 수록 진해짐 
    ) 
    it.outlineColor = color //테두리 라인 색상
    it.outlineWidth = 2 //테두리 라인 굵기 설정 
    it.map = naverMap
}

 

 

이렇게 HOLE 까지 설정해주면 지도안 Polygon 안에 HOLE이 생기게 됩니다. 

 

간단하게 Polygon 예제를 포스팅 해봤습니다. 감사합니다! 

반응형