Constructor 링크 복사

KNMapImage 클래스는 KNSDK를 통해 생성되어야 합니다.

초깃값으로 설정된 KNMapImage 객체를 생성합니다. 입력한 크기 값은 generateMapWithCompletion 함수를 통해 이미지를 생성할 때 이미지의 크기를 결정합니다.

activity 인자는 지도의 이미지를 생성할 때 필요한 컨텍스트입니다.

예시 코드 KNSDK.mapImageByActivityWithSize()
fun createMapImage(): KNMapImage? {
    return KNSDK.mapImageByActivityWithSize(
            activity,
            KNMapTheme.driveNight(),
            RectF(0f, 0f, 500f, 500f),
            // minRect: 비정상적인 높이/넓이 값을 반환하는 coordinateLayout 버그로 인해 정상적인 사이즈를 측정하지 못할 경우 사용되는 값
            RectF(0f, 0f, 500f, 500f))
}
fun createMapImage(): KNMapImage? {
    return KNSDK.mapImageByActivityWithSize(
            activity,
            KNMapTheme.driveNight(),
            RectF(0f, 0f, 500f, 500f),
            // minRect: 비정상적인 높이/넓이 값을 반환하는 coordinateLayout 버그로 인해 정상적인 사이즈를 측정하지 못할 경우 사용되는 값
            RectF(0f, 0f, 500f, 500f))
}
코드가 숨겨졌습니다.

초깃값으로 설정된 KNMapImage 객체를 생성합니다. 입력한 크기 값은 generateMapWithCompletion 함수를 통해 이미지를 생성할 때 이미지의 크기를 결정합니다.

view 인자는 지도의 이미지를 생성할 때 필요한 컨텍스트를 추출할 때 사용합니다.

예시 코드 KNSDK.mapImageByViewWithSize()
fun createMapImage(): KNMapImage? {
    return KNSDK.mapImageByViewWithSize(
            // contentView
            view,
            KNMapTheme.driveNight(),
            RectF(0f, 0f, 500f, 500f),
            // minRect: 비정상적인 높이/넓이 값을 반환하는 coordinateLayout 버그로 인해 정상적인 사이즈를 측정하지 못할 경우 사용되는 값
            RectF(0f, 0f, 500f, 500f))
}
fun createMapImage(): KNMapImage? {
    return KNSDK.mapImageByViewWithSize(
            // contentView
            view,
            KNMapTheme.driveNight(),
            RectF(0f, 0f, 500f, 500f),
            // minRect: 비정상적인 높이/넓이 값을 반환하는 coordinateLayout 버그로 인해 정상적인 사이즈를 측정하지 못할 경우 사용되는 값
            RectF(0f, 0f, 500f, 500f))
}
코드가 숨겨졌습니다.

함수 링크 복사

지도에 경로를 설정합니다.

fun setRoute( route: KNRoute )
예시 코드 setRoute
fun createMapImage(): KNMapImage? {
    return KNSDK.mapImageByViewWithSize(
            // contentView
            view,
            KNMapTheme.driveNight(),
            RectF(0f, 0f, 500f, 500f),
            // minRect: 비정상적인 높이/넓이 값을 반환하는 coordinateLayout 버그로 인해 정상적인 사이즈를 측정하지 못할 경우 사용되는 값
            RectF(0f, 0f, 500f, 500f))
}

fun settingRouteWithImageMap(route: KNRoute) {
    createMapImage()?.setRoute(route)
}
fun createMapImage(): KNMapImage? {
    return KNSDK.mapImageByViewWithSize(
            // contentView
            view,
            KNMapTheme.driveNight(),
            RectF(0f, 0f, 500f, 500f),
            // minRect: 비정상적인 높이/넓이 값을 반환하는 coordinateLayout 버그로 인해 정상적인 사이즈를 측정하지 못할 경우 사용되는 값
            RectF(0f, 0f, 500f, 500f))
}

fun settingRouteWithImageMap(route: KNRoute) {
    createMapImage()?.setRoute(route)
}
코드가 숨겨졌습니다.

route
경로

경로 리스트를 전달받아 지도에 경로를 설정합니다.

fun setRoutes( routes: List<KNRoute> )
예시 코드 setRoutes
fun createMapImage(): KNMapImage? {
    return KNSDK.mapImageByViewWithSize(
            // contentView
            view,
            KNMapTheme.driveNight(),
            RectF(0f, 0f, 500f, 500f),
            // minRect: 비정상적인 높이/넓이 값을 반환하는 coordinateLayout 버그로 인해 정상적인 사이즈를 측정하지 못할 경우 사용되는 값
            RectF(0f, 0f, 500f, 500f))
}

fun settingRouteWithImageMap(routes: List<KNRoute>) {
    createMapImage()?.setRoutes(routes)
}
fun createMapImage(): KNMapImage? {
    return KNSDK.mapImageByViewWithSize(
            // contentView
            view,
            KNMapTheme.driveNight(),
            RectF(0f, 0f, 500f, 500f),
            // minRect: 비정상적인 높이/넓이 값을 반환하는 coordinateLayout 버그로 인해 정상적인 사이즈를 측정하지 못할 경우 사용되는 값
            RectF(0f, 0f, 500f, 500f))
}

fun settingRouteWithImageMap(routes: List<KNRoute>) {
    createMapImage()?.setRoutes(routes)
}
코드가 숨겨졌습니다.

routes
경로 리스트

지도에 설정된 모든 경로 리스트를 반환합니다.

fun getRoutes(): List<KNRoute>
예시 코드 getRoutes():
fun createMapImage(route: List<KNRoute>): KNMapImage? {
    return KNSDK.mapImageByViewWithSize(
            // contentView
            view,
            KNMapTheme.driveNight(),
            RectF(0f, 0f, 500f, 500f),
            // minRect: coordinateLayout 버그(정상적인 값이 아닌 비정상적인 높이, 넓이 값을 주는 경우)로 인해 정상적인 사이즈를 측정하지 못할 경우 사용되는 값
            RectF(0f, 0f, 500f, 500f))?.apply { 
                setRoutes(route)
    }
}

fun getRouteWithImageMap(routes: List<KNRoute>): List<KNRoute> {
    return createMapImage(routes)?.getRoutes() ?: emptyList()
}
fun createMapImage(route: List<KNRoute>): KNMapImage? {
    return KNSDK.mapImageByViewWithSize(
            // contentView
            view,
            KNMapTheme.driveNight(),
            RectF(0f, 0f, 500f, 500f),
            // minRect: coordinateLayout 버그(정상적인 값이 아닌 비정상적인 높이, 넓이 값을 주는 경우)로 인해 정상적인 사이즈를 측정하지 못할 경우 사용되는 값
            RectF(0f, 0f, 500f, 500f))?.apply { 
                setRoutes(route)
    }
}

fun getRouteWithImageMap(routes: List<KNRoute>): List<KNRoute> {
    return createMapImage(routes)?.getRoutes() ?: emptyList()
}
코드가 숨겨졌습니다.

지도에 등록된 모든 경로를 삭제합니다.

fun removeRoutesAll()
예시 코드 removeRoutesAll()
fun createMapImage(route: List<KNRoute>): KNMapImage? {
    return KNSDK.mapImageByViewWithSize(
            // contentView
            view,
            KNMapTheme.driveNight(),
            RectF(0f, 0f, 500f, 500f),
            // minRect: coordinateLayout 버그(정상적인 값이 아닌 비정상적인 높이, 넓이 값을 주는 경우)로 인해 정상적인 사이즈를 측정하지 못할 경우 사용되는 값
            RectF(0f, 0f, 500f, 500f))?.apply { 
                setRoutes(route)
    }
}

fun removeRouteWithImageMap(routes: List<KNRoute>) {
    createMapImage(routes)?.removeRoutesAll()
}
fun createMapImage(route: List<KNRoute>): KNMapImage? {
    return KNSDK.mapImageByViewWithSize(
            // contentView
            view,
            KNMapTheme.driveNight(),
            RectF(0f, 0f, 500f, 500f),
            // minRect: coordinateLayout 버그(정상적인 값이 아닌 비정상적인 높이, 넓이 값을 주는 경우)로 인해 정상적인 사이즈를 측정하지 못할 경우 사용되는 값
            RectF(0f, 0f, 500f, 500f))?.apply { 
                setRoutes(route)
    }
}

fun removeRouteWithImageMap(routes: List<KNRoute>) {
    createMapImage(routes)?.removeRoutesAll()
}
코드가 숨겨졌습니다.

입력 받은 사용자 위치 정보를 통해 사용자가 지나간 경로 부분을 자릅니다. 경로의 시작 위치는 KNLocation을 기준으로 합니다.

fun cullPassedRoute( guideLocation: KNLocation )
예시 코드 cullPassedRoute
fun createMapImage(route: List<KNRoute>): KNMapImage? {
    return KNSDK.mapImageByViewWithSize(
            // contentView
            view,
            KNMapTheme.driveNight(),
            RectF(0f, 0f, 500f, 500f),
            // minRect: 비정상적인 높이/넓이 값을 반환하는 coordinateLayout 버그로 인해 정상적인 사이즈를 측정하지 못할 경우 사용되는 값
            RectF(0f, 0f, 500f, 500f))?.apply {
                setRoutes(route)
    }
}

fun cullingRouteWithImageMap(routes: List<KNRoute>, cullLocation: KNLocation) {
   createMapImage(routes)?.cullPassedRoute(cullLocation)
}
fun createMapImage(route: List<KNRoute>): KNMapImage? {
    return KNSDK.mapImageByViewWithSize(
            // contentView
            view,
            KNMapTheme.driveNight(),
            RectF(0f, 0f, 500f, 500f),
            // minRect: 비정상적인 높이/넓이 값을 반환하는 coordinateLayout 버그로 인해 정상적인 사이즈를 측정하지 못할 경우 사용되는 값
            RectF(0f, 0f, 500f, 500f))?.apply {
                setRoutes(route)
    }
}

fun cullingRouteWithImageMap(routes: List<KNRoute>, cullLocation: KNLocation) {
   createMapImage(routes)?.cullPassedRoute(cullLocation)
}
코드가 숨겨졌습니다.

guideLocation
위치 정보

지도에 마커를 추가합니다.

fun addMarker( marker: KNMapMarker )
예시 코드 addMarker
fun createMapImage(): KNMapImage? {
    return KNSDK.mapImageByViewWithSize(
            // contentView
            view,
            KNMapTheme.driveNight(),
            RectF(0f, 0f, 500f, 500f),
            // minRect: 비정상적인 높이/넓이 값을 반환하는 coordinateLayout 버그로 인해 정상적인 사이즈를 측정하지 못할 경우 사용되는 값
            RectF(0f, 0f, 500f, 500f))
}

fun addMarkerWithImageMap(marker: KNMapMarker) {
    createMapImage()?.addMarker(marker)
}
fun createMapImage(): KNMapImage? {
    return KNSDK.mapImageByViewWithSize(
            // contentView
            view,
            KNMapTheme.driveNight(),
            RectF(0f, 0f, 500f, 500f),
            // minRect: 비정상적인 높이/넓이 값을 반환하는 coordinateLayout 버그로 인해 정상적인 사이즈를 측정하지 못할 경우 사용되는 값
            RectF(0f, 0f, 500f, 500f))
}

fun addMarkerWithImageMap(marker: KNMapMarker) {
    createMapImage()?.addMarker(marker)
}
코드가 숨겨졌습니다.

marker
마커

지도에 마커 리스트를 추가합니다.

fun addMarkers( markers: List<KNMapMarker> )
예시 코드 addMarkers
fun createMapImage(): KNMapImage? {
    return KNSDK.mapImageByViewWithSize(
            // contentView
            view,
            KNMapTheme.driveNight(),
            RectF(0f, 0f, 500f, 500f),
            // minRect: 비정상적인 높이/넓이 값을 반환하는 coordinateLayout 버그로 인해 정상적인 사이즈를 측정하지 못할 경우 사용되는 값
            RectF(0f, 0f, 500f, 500f))
}

fun addMarkerWithImageMap(markers: List<KNMapMarker>) {
    createMapImage()?.addMarkers(markers)
}
fun createMapImage(): KNMapImage? {
    return KNSDK.mapImageByViewWithSize(
            // contentView
            view,
            KNMapTheme.driveNight(),
            RectF(0f, 0f, 500f, 500f),
            // minRect: 비정상적인 높이/넓이 값을 반환하는 coordinateLayout 버그로 인해 정상적인 사이즈를 측정하지 못할 경우 사용되는 값
            RectF(0f, 0f, 500f, 500f))
}

fun addMarkerWithImageMap(markers: List<KNMapMarker>) {
    createMapImage()?.addMarkers(markers)
}
코드가 숨겨졌습니다.

markers
마커 리스트

지도에서 마커를 제거합니다.

fun removeMarker( marker: KNMapMarker )
예시 코드 removeMarker
fun createMapImage(): KNMapImage? {
    return KNSDK.mapImageByViewWithSize(
            // contentView
            view,
            KNMapTheme.driveNight(),
            RectF(0f, 0f, 500f, 500f),
            // minRect: 비정상적인 높이/넓이 값을 반환하는 coordinateLayout 버그로 인해 정상적인 사이즈를 측정하지 못할 경우 사용되는 값
            RectF(0f, 0f, 500f, 500f))
}

fun removeMarkerWithImageMap(marker: KNMapMarker) {
    createMapImage()?.removeMarker(marker)
}
fun createMapImage(): KNMapImage? {
    return KNSDK.mapImageByViewWithSize(
            // contentView
            view,
            KNMapTheme.driveNight(),
            RectF(0f, 0f, 500f, 500f),
            // minRect: 비정상적인 높이/넓이 값을 반환하는 coordinateLayout 버그로 인해 정상적인 사이즈를 측정하지 못할 경우 사용되는 값
            RectF(0f, 0f, 500f, 500f))
}

fun removeMarkerWithImageMap(marker: KNMapMarker) {
    createMapImage()?.removeMarker(marker)
}
코드가 숨겨졌습니다.

marker
마커

지도에 추가된 모든 마커를 제거합니다.

fun removeMarkersAll()
예시 코드 removeMarkersAll()
fun createMapImage(): KNMapImage? {
    return KNSDK.mapImageByViewWithSize(
            // contentView
            view,
            KNMapTheme.driveNight(),
            RectF(0f, 0f, 500f, 500f),
            // minRect: 비정상적인 높이/넓이 값을 반환하는 coordinateLayout 버그로 인해 정상적인 사이즈를 측정하지 못할 경우 사용되는 값
            RectF(0f, 0f, 500f, 500f))
}

fun removeMarkersAllWithImageMap() {
    createMapImage()?.removeMarkersAll()
}
fun createMapImage(): KNMapImage? {
    return KNSDK.mapImageByViewWithSize(
            // contentView
            view,
            KNMapTheme.driveNight(),
            RectF(0f, 0f, 500f, 500f),
            // minRect: 비정상적인 높이/넓이 값을 반환하는 coordinateLayout 버그로 인해 정상적인 사이즈를 측정하지 못할 경우 사용되는 값
            RectF(0f, 0f, 500f, 500f))
}

fun removeMarkersAllWithImageMap() {
    createMapImage()?.removeMarkersAll()
}
코드가 숨겨졌습니다.

지도에 추가된 마커 리스트를 반환합니다. 추가된 마커가 없을 경우 빈 리스트를 반환합니다.

fun getMarkers(): List<KNMapMarker>
예시 코드 getMarkers():
fun createMapImage(): KNMapImage? {
    return KNSDK.mapImageByViewWithSize(
            // contentView
            view,
            KNMapTheme.driveNight(),
            RectF(0f, 0f, 500f, 500f),
            // minRect: 비정상적인 높이/넓이 값을 반환하는 coordinateLayout 버그로 인해 정상적인 사이즈를 측정하지 못할 경우 사용되는 값
            RectF(0f, 0f, 500f, 500f))
}

fun getMarkersWithImageMap(): List<KNMapMarker> {
    return createMapImage()?.getMarkers() ?: emptyList()
}
fun createMapImage(): KNMapImage? {
    return KNSDK.mapImageByViewWithSize(
            // contentView
            view,
            KNMapTheme.driveNight(),
            RectF(0f, 0f, 500f, 500f),
            // minRect: 비정상적인 높이/넓이 값을 반환하는 coordinateLayout 버그로 인해 정상적인 사이즈를 측정하지 못할 경우 사용되는 값
            RectF(0f, 0f, 500f, 500f))
}

fun getMarkersWithImageMap(): List<KNMapMarker> {
    return createMapImage()?.getMarkers() ?: emptyList()
}
코드가 숨겨졌습니다.

지도에 원을 추가합니다.

fun addCircle( circle: KNMapCircle )
예시 코드 addCircle
fun createMapImage(): KNMapImage? {
    return KNSDK.mapImageByViewWithSize(
            // contentView
            view,
            KNMapTheme.driveNight(),
            RectF(0f, 0f, 500f, 500f),
            // minRect: 비정상적인 높이/넓이 값을 반환하는 coordinateLayout 버그로 인해 정상적인 사이즈를 측정하지 못할 경우 사용되는 값
            RectF(0f, 0f, 500f, 500f))
}

fun addCircleWithImageMap(circle: KNMapCircle) {
    createMapImage()?.addCircle(circle)
}
fun createMapImage(): KNMapImage? {
    return KNSDK.mapImageByViewWithSize(
            // contentView
            view,
            KNMapTheme.driveNight(),
            RectF(0f, 0f, 500f, 500f),
            // minRect: 비정상적인 높이/넓이 값을 반환하는 coordinateLayout 버그로 인해 정상적인 사이즈를 측정하지 못할 경우 사용되는 값
            RectF(0f, 0f, 500f, 500f))
}

fun addCircleWithImageMap(circle: KNMapCircle) {
    createMapImage()?.addCircle(circle)
}
코드가 숨겨졌습니다.

circle

지도에서 원을 제거합니다.

fun removeCircle( circle: KNMapCircle )
예시 코드 removeCircle
fun createMapImage(): KNMapImage? {
    return KNSDK.mapImageByViewWithSize(
            // contentView
            view,
            KNMapTheme.driveNight(),
            RectF(0f, 0f, 500f, 500f),
            // minRect: 비정상적인 높이/넓이 값을 반환하는 coordinateLayout 버그로 인해 정상적인 사이즈를 측정하지 못할 경우 사용되는 값
            RectF(0f, 0f, 500f, 500f))
}

fun removeCircleWithImageMap(circle: KNMapCircle) {
    createMapImage()?.removeCircle(circle)
}
fun createMapImage(): KNMapImage? {
    return KNSDK.mapImageByViewWithSize(
            // contentView
            view,
            KNMapTheme.driveNight(),
            RectF(0f, 0f, 500f, 500f),
            // minRect: 비정상적인 높이/넓이 값을 반환하는 coordinateLayout 버그로 인해 정상적인 사이즈를 측정하지 못할 경우 사용되는 값
            RectF(0f, 0f, 500f, 500f))
}

fun removeCircleWithImageMap(circle: KNMapCircle) {
    createMapImage()?.removeCircle(circle)
}
코드가 숨겨졌습니다.

circle

지도에 추가된 모든 원을 제거합니다.

fun removeCirclesAll()
예시 코드 removeCirclesAll()
fun createMapImage(): KNMapImage? {
    return KNSDK.mapImageByViewWithSize(
            // contentView
            view,
            KNMapTheme.driveNight(),
            RectF(0f, 0f, 500f, 500f),
            // minRect: 비정상적인 높이/넓이 값을 반환하는 coordinateLayout 버그로 인해 정상적인 사이즈를 측정하지 못할 경우 사용되는 값
            RectF(0f, 0f, 500f, 500f))
}

fun removeCirclesAllWithImageMap() {
    createMapImage()?.removeCirclesAll()
}
fun createMapImage(): KNMapImage? {
    return KNSDK.mapImageByViewWithSize(
            // contentView
            view,
            KNMapTheme.driveNight(),
            RectF(0f, 0f, 500f, 500f),
            // minRect: 비정상적인 높이/넓이 값을 반환하는 coordinateLayout 버그로 인해 정상적인 사이즈를 측정하지 못할 경우 사용되는 값
            RectF(0f, 0f, 500f, 500f))
}

fun removeCirclesAllWithImageMap() {
    createMapImage()?.removeCirclesAll()
}
코드가 숨겨졌습니다.

지도에 추가된 원 리스트를 반환합니다. 추가된 원이 없을 경우 빈 리스트를 반환합니다.

fun getCircles(): List<KNMapCircle>
예시 코드 getCircles():
fun createMapImage(): KNMapImage? {
    return KNSDK.mapImageByViewWithSize(
            // contentView
            view,
            KNMapTheme.driveNight(),
            RectF(0f, 0f, 500f, 500f),
            // minRect: 비정상적인 높이/넓이 값을 반환하는 coordinateLayout 버그로 인해 정상적인 사이즈를 측정하지 못할 경우 사용되는 값
            RectF(0f, 0f, 500f, 500f))
}

fun getCirclesWithImageMap(): List<KNMapCircle> {
    return createMapImage()?.getCircles() ?: emptyList()
}
fun createMapImage(): KNMapImage? {
    return KNSDK.mapImageByViewWithSize(
            // contentView
            view,
            KNMapTheme.driveNight(),
            RectF(0f, 0f, 500f, 500f),
            // minRect: 비정상적인 높이/넓이 값을 반환하는 coordinateLayout 버그로 인해 정상적인 사이즈를 측정하지 못할 경우 사용되는 값
            RectF(0f, 0f, 500f, 500f))
}

fun getCirclesWithImageMap(): List<KNMapCircle> {
    return createMapImage()?.getCircles() ?: emptyList()
}
코드가 숨겨졌습니다.

지도에 폴리라인을 추가합니다.

fun addPolyline( polyline: KNMapPolyline )
예시 코드 addPolyline
fun createMapImage(): KNMapImage? {
    return KNSDK.mapImageByViewWithSize(
            // contentView
            view,
            KNMapTheme.driveNight(),
            RectF(0f, 0f, 500f, 500f),
            // minRect: 비정상적인 높이/넓이 값을 반환하는 coordinateLayout 버그로 인해 정상적인 사이즈를 측정하지 못할 경우 사용되는 값
            RectF(0f, 0f, 500f, 500f))
}

fun addPolylineWithImageMap(polyline: KNMapPolyline) {
    createMapImage()?.addPolyline(polyline)
}
fun createMapImage(): KNMapImage? {
    return KNSDK.mapImageByViewWithSize(
            // contentView
            view,
            KNMapTheme.driveNight(),
            RectF(0f, 0f, 500f, 500f),
            // minRect: 비정상적인 높이/넓이 값을 반환하는 coordinateLayout 버그로 인해 정상적인 사이즈를 측정하지 못할 경우 사용되는 값
            RectF(0f, 0f, 500f, 500f))
}

fun addPolylineWithImageMap(polyline: KNMapPolyline) {
    createMapImage()?.addPolyline(polyline)
}
코드가 숨겨졌습니다.

polyline
폴리라인

지도에서 폴리라인을 제거합니다.

fun removePolyline( polyline: KNMapPolyline )
예시 코드 removePolyline
fun createMapImage(): KNMapImage? {
    return KNSDK.mapImageByViewWithSize(
            // contentView
            view,
            KNMapTheme.driveNight(),
            RectF(0f, 0f, 500f, 500f),
            // minRect: 비정상적인 높이/넓이 값을 반환하는 coordinateLayout 버그로 인해 정상적인 사이즈를 측정하지 못할 경우 사용되는 값
            RectF(0f, 0f, 500f, 500f))
}

fun removePolylineWithImageMap(polyline: KNMapPolyline) {
    createMapImage()?.removePolyline(polyline)
}
fun createMapImage(): KNMapImage? {
    return KNSDK.mapImageByViewWithSize(
            // contentView
            view,
            KNMapTheme.driveNight(),
            RectF(0f, 0f, 500f, 500f),
            // minRect: 비정상적인 높이/넓이 값을 반환하는 coordinateLayout 버그로 인해 정상적인 사이즈를 측정하지 못할 경우 사용되는 값
            RectF(0f, 0f, 500f, 500f))
}

fun removePolylineWithImageMap(polyline: KNMapPolyline) {
    createMapImage()?.removePolyline(polyline)
}
코드가 숨겨졌습니다.

polyline
폴리라인

지도에 추가된 모든 폴리라인을 제거합니다.

fun removePolylinesAll()
예시 코드 removePolylinesAll()
fun createMapImage(): KNMapImage? {
    return KNSDK.mapImageByViewWithSize(
            // contentView
            view,
            KNMapTheme.driveNight(),
            RectF(0f, 0f, 500f, 500f),
            // minRect: 비정상적인 높이/넓이 값을 반환하는 coordinateLayout 버그로 인해 정상적인 사이즈를 측정하지 못할 경우 사용되는 값
            RectF(0f, 0f, 500f, 500f))
}

fun removePolylinesAllWithImageMap() {
    createMapImage()?.removePolylinesAll()
}
fun createMapImage(): KNMapImage? {
    return KNSDK.mapImageByViewWithSize(
            // contentView
            view,
            KNMapTheme.driveNight(),
            RectF(0f, 0f, 500f, 500f),
            // minRect: 비정상적인 높이/넓이 값을 반환하는 coordinateLayout 버그로 인해 정상적인 사이즈를 측정하지 못할 경우 사용되는 값
            RectF(0f, 0f, 500f, 500f))
}

fun removePolylinesAllWithImageMap() {
    createMapImage()?.removePolylinesAll()
}
코드가 숨겨졌습니다.

지도에 추가된 폴리라인 리스트를 반환합니다. 추가된 폴리라인이 없을 경우 빈 리스트를 반환합니다.

fun getPolylines(): List<KNMapPolyline>
예시 코드 getPolylines():
fun createMapImage(): KNMapImage? {
    return KNSDK.mapImageByViewWithSize(
            // contentView
            view,
            KNMapTheme.driveNight(),
            RectF(0f, 0f, 500f, 500f),
            // minRect: 비정상적인 높이/넓이 값을 반환하는 coordinateLayout 버그로 인해 정상적인 사이즈를 측정하지 못할 경우 사용되는 값
            RectF(0f, 0f, 500f, 500f))
}

fun getPolylinesWithImageMap(): List<KNMapPolyline> {
    return createMapImage()?.getPolylines() ?: emptyList()
}
fun createMapImage(): KNMapImage? {
    return KNSDK.mapImageByViewWithSize(
            // contentView
            view,
            KNMapTheme.driveNight(),
            RectF(0f, 0f, 500f, 500f),
            // minRect: 비정상적인 높이/넓이 값을 반환하는 coordinateLayout 버그로 인해 정상적인 사이즈를 측정하지 못할 경우 사용되는 값
            RectF(0f, 0f, 500f, 500f))
}

fun getPolylinesWithImageMap(): List<KNMapPolyline> {
    return createMapImage()?.getPolylines() ?: emptyList()
}
코드가 숨겨졌습니다.

지도에 폴리곤(다각형)을 추가합니다.

fun addPolygon( polygon: KNMapPolygon )
예시 코드 addPolygon
fun createMapImage(): KNMapImage? {
    return KNSDK.mapImageByViewWithSize(
            // contentView
            view,
            KNMapTheme.driveNight(),
            RectF(0f, 0f, 500f, 500f),
            // minRect: 비정상적인 높이/넓이 값을 반환하는 coordinateLayout 버그로 인해 정상적인 사이즈를 측정하지 못할 경우 사용되는 값
            RectF(0f, 0f, 500f, 500f))
}

fun addPolygonWithImageMap(polygon: KNMapPolygon) {
    createMapImage()?.addPolygon(polygon)
}
fun createMapImage(): KNMapImage? {
    return KNSDK.mapImageByViewWithSize(
            // contentView
            view,
            KNMapTheme.driveNight(),
            RectF(0f, 0f, 500f, 500f),
            // minRect: 비정상적인 높이/넓이 값을 반환하는 coordinateLayout 버그로 인해 정상적인 사이즈를 측정하지 못할 경우 사용되는 값
            RectF(0f, 0f, 500f, 500f))
}

fun addPolygonWithImageMap(polygon: KNMapPolygon) {
    createMapImage()?.addPolygon(polygon)
}
코드가 숨겨졌습니다.

polygon
폴리곤

지도에서 폴리곤(다각형)을 제거합니다.

fun removePolygon( polygon: KNMapPolygon )
예시 코드 removePolygon
fun createMapImage(): KNMapImage? {
    return KNSDK.mapImageByViewWithSize(
            // contentView
            view,
            KNMapTheme.driveNight(),
            RectF(0f, 0f, 500f, 500f),
            // minRect: 비정상적인 높이/넓이 값을 반환하는 coordinateLayout 버그로 인해 정상적인 사이즈를 측정하지 못할 경우 사용되는 값
            RectF(0f, 0f, 500f, 500f))
}

fun removePolygonWithImageMap(polygon: KNMapPolygon) {
    createMapImage()?.removeMarker(polygon)
}
fun createMapImage(): KNMapImage? {
    return KNSDK.mapImageByViewWithSize(
            // contentView
            view,
            KNMapTheme.driveNight(),
            RectF(0f, 0f, 500f, 500f),
            // minRect: 비정상적인 높이/넓이 값을 반환하는 coordinateLayout 버그로 인해 정상적인 사이즈를 측정하지 못할 경우 사용되는 값
            RectF(0f, 0f, 500f, 500f))
}

fun removePolygonWithImageMap(polygon: KNMapPolygon) {
    createMapImage()?.removeMarker(polygon)
}
코드가 숨겨졌습니다.

polygon
폴리곤

지도에 추가된 모든 폴리곤(다각형)을 제거합니다.

fun removePolygonsAll()
예시 코드 removePolygonsAll()
fun createMapImage(): KNMapImage? {
    return KNSDK.mapImageByViewWithSize(
            // contentView
            view,
            KNMapTheme.driveNight(),
            RectF(0f, 0f, 500f, 500f),
            // minRect: 비정상적인 높이/넓이 값을 반환하는 coordinateLayout 버그로 인해 정상적인 사이즈를 측정하지 못할 경우 사용되는 값
            RectF(0f, 0f, 500f, 500f))
}

fun removePolygonsAllWithImageMap() {
    createMapImage()?.removePolygonsAll()
}
fun createMapImage(): KNMapImage? {
    return KNSDK.mapImageByViewWithSize(
            // contentView
            view,
            KNMapTheme.driveNight(),
            RectF(0f, 0f, 500f, 500f),
            // minRect: 비정상적인 높이/넓이 값을 반환하는 coordinateLayout 버그로 인해 정상적인 사이즈를 측정하지 못할 경우 사용되는 값
            RectF(0f, 0f, 500f, 500f))
}

fun removePolygonsAllWithImageMap() {
    createMapImage()?.removePolygonsAll()
}
코드가 숨겨졌습니다.

지도에 추가된 폴리곤(다각형) 리스트를 반환합니다. 추가된 폴리곤이 없을 경우 빈 리스트를 반환합니다.

fun getPolygons(): List<KNMapPolygon>
예시 코드 getPolygons():
fun createMapImage(): KNMapImage? {
    return KNSDK.mapImageByViewWithSize(
            // contentView
            view,
            KNMapTheme.driveNight(),
            RectF(0f, 0f, 500f, 500f),
            // minRect: 비정상적인 높이/넓이 값을 반환하는 coordinateLayout 버그로 인해 정상적인 사이즈를 측정하지 못할 경우 사용되는 값
            RectF(0f, 0f, 500f, 500f))
}

fun getPolygonsWithImageMap(): List<KNMapPolygon> {
    return createMapImage()?.getPolygons() ?: emptyList()
}
fun createMapImage(): KNMapImage? {
    return KNSDK.mapImageByViewWithSize(
            // contentView
            view,
            KNMapTheme.driveNight(),
            RectF(0f, 0f, 500f, 500f),
            // minRect: 비정상적인 높이/넓이 값을 반환하는 coordinateLayout 버그로 인해 정상적인 사이즈를 측정하지 못할 경우 사용되는 값
            RectF(0f, 0f, 500f, 500f))
}

fun getPolygonsWithImageMap(): List<KNMapPolygon> {
    return createMapImage()?.getPolygons() ?: emptyList()
}
코드가 숨겨졌습니다.

KNMapCoordinateRegion을 감싸는 화면의 사각 영역(RectF)을 반환합니다.

fun getScreenRect( region: KNMapCoordinateRegion ): RectF
예시 코드 getScreenRect:
fun createMapImage(): KNMapImage? {
    return KNSDK.mapImageByViewWithSize(
            // contentView
            view,
            KNMapTheme.driveNight(),
            RectF(0f, 0f, 500f, 500f),
            // minRect: 비정상적인 높이/넓이 값을 반환하는 coordinateLayout 버그로 인해 정상적인 사이즈를 측정하지 못할 경우 사용되는 값
            RectF(0f, 0f, 500f, 500f))
}

fun regionRectWithImageMap() {
    createMapImage()?.apply {
        val region = KNMapCoordinateRegion.initWithRoute(getRoutes())
        region.mergeWithMarkers(getMarkers())
        // 계산 시 영역이 현재 화면에서 넘어가는 경우 -값을 가질 수 있음.
        val screenRectF = getScreenRect(region)
    }
}
fun createMapImage(): KNMapImage? {
    return KNSDK.mapImageByViewWithSize(
            // contentView
            view,
            KNMapTheme.driveNight(),
            RectF(0f, 0f, 500f, 500f),
            // minRect: 비정상적인 높이/넓이 값을 반환하는 coordinateLayout 버그로 인해 정상적인 사이즈를 측정하지 못할 경우 사용되는 값
            RectF(0f, 0f, 500f, 500f))
}

fun regionRectWithImageMap() {
    createMapImage()?.apply {
        val region = KNMapCoordinateRegion.initWithRoute(getRoutes())
        region.mergeWithMarkers(getMarkers())
        // 계산 시 영역이 현재 화면에서 넘어가는 경우 -값을 가질 수 있음.
        val screenRectF = getScreenRect(region)
    }
}
코드가 숨겨졌습니다.

region
입력 받은 좌표 영역

화면의 사각 영역(RectF)이 KNMapCoordinateRegion과 겹치는지 여부를 반환합니다.

fun isOverlappedWithScreenRect( screenRect: RectF,
region: KNMapCoordinateRegion ): Boolean
예시 코드 isOverlappedWithScreenRect:
fun createMapImage(): KNMapImage? {
    return KNSDK.mapImageByViewWithSize(
            // contentView
            view,
            KNMapTheme.driveNight(),
            RectF(0f, 0f, 500f, 500f),
            // minRect: 비정상적인 높이/넓이 값을 반환하는 coordinateLayout 버그로 인해 정상적인 사이즈를 측정하지 못할 경우 사용되는 값
            RectF(0f, 0f, 500f, 500f))
}

fun areaCollisionWithImageMap() {
    createMapImage()?.apply {
        val region = KNMapCoordinateRegion.initWithRoute(getRoutes())
        region.mergeWithMarkers(getMarkers())
        val center = WGS84ToKATEC(127.11019081347423,37.3941851228957)
        val screenPoint = katecToScreen(center)
        val screeRectF = RectF(screenPoint.x - 50f, screenPoint.y - 50f, screenPoint.x + 50f, screenPoint.y + 50f)
        val collision = isOverlappedWithScreenRect(screeRectF, region)
    }
}
fun createMapImage(): KNMapImage? {
    return KNSDK.mapImageByViewWithSize(
            // contentView
            view,
            KNMapTheme.driveNight(),
            RectF(0f, 0f, 500f, 500f),
            // minRect: 비정상적인 높이/넓이 값을 반환하는 coordinateLayout 버그로 인해 정상적인 사이즈를 측정하지 못할 경우 사용되는 값
            RectF(0f, 0f, 500f, 500f))
}

fun areaCollisionWithImageMap() {
    createMapImage()?.apply {
        val region = KNMapCoordinateRegion.initWithRoute(getRoutes())
        region.mergeWithMarkers(getMarkers())
        val center = WGS84ToKATEC(127.11019081347423,37.3941851228957)
        val screenPoint = katecToScreen(center)
        val screeRectF = RectF(screenPoint.x - 50f, screenPoint.y - 50f, screenPoint.x + 50f, screenPoint.y + 50f)
        val collision = isOverlappedWithScreenRect(screeRectF, region)
    }
}
코드가 숨겨졌습니다.

screenRect
화면의 사각 영역(RectF)
region
입력 받은 좌표 영역

화면의 좌표(FloatPoint)가 KNMapCoordinateRegion과 겹치는지 여부를 반환합니다.

fun isOverlappedWithScreenPoint( screenPoint: FloatPoint,
region: KNMapCoordinateRegion ): Boolean
예시 코드 isOverlappedWithScreenPoint:
fun createMapImage(): KNMapImage? {
    return KNSDK.mapImageByViewWithSize(
            // contentView
            view,
            KNMapTheme.driveNight(),
            RectF(0f, 0f, 500f, 500f),
            // minRect: 비정상적인 높이/넓이 값을 반환하는 coordinateLayout 버그로 인해 정상적인 사이즈를 측정하지 못할 경우 사용되는 값
            RectF(0f, 0f, 500f, 500f))
}

fun pointCollisionWithImageMap() {
    createMapImage()?.apply {
        val region = KNMapCoordinateRegion.initWithRoute(getRoutes())
        region.mergeWithMarkers(getMarkers())
        val center = WGS84ToKATEC(127.11019081347423,37.3941851228957)
        val screenPoint = katecToScreen(center)
        val collision = isOverlappedWithScreenPoint(screenPoint, region)
    }
}
fun createMapImage(): KNMapImage? {
    return KNSDK.mapImageByViewWithSize(
            // contentView
            view,
            KNMapTheme.driveNight(),
            RectF(0f, 0f, 500f, 500f),
            // minRect: 비정상적인 높이/넓이 값을 반환하는 coordinateLayout 버그로 인해 정상적인 사이즈를 측정하지 못할 경우 사용되는 값
            RectF(0f, 0f, 500f, 500f))
}

fun pointCollisionWithImageMap() {
    createMapImage()?.apply {
        val region = KNMapCoordinateRegion.initWithRoute(getRoutes())
        region.mergeWithMarkers(getMarkers())
        val center = WGS84ToKATEC(127.11019081347423,37.3941851228957)
        val screenPoint = katecToScreen(center)
        val collision = isOverlappedWithScreenPoint(screenPoint, region)
    }
}
코드가 숨겨졌습니다.

screenPoint
화면의 좌표(FloatPoint)
region
입력 받은 좌표 영역

KNMapCameraUpdate의 설정값으로 지도의 카메라 위치를 업데이트합니다.

fun moveCamera( cameraUpdate: KNMapCameraUpdate )
예시 코드 moveCamera
fun createMapImage(): KNMapImage? {
    return KNSDK.mapImageByViewWithSize(
            // contentView
            view,
            KNMapTheme.driveNight(),
            RectF(0f, 0f, 500f, 500f),
            // minRect: 비정상적인 높이/넓이 값을 반환하는 coordinateLayout 버그로 인해 정상적인 사이즈를 측정하지 못할 경우 사용되는 값
            RectF(0f, 0f, 500f, 500f))
}

fun moveCameraWithImageMap() {
    createMapImage()?.apply {
        val region = KNMapCoordinateRegion.initWithRoute(getRoutes())
        region.mergeWithMarkers(getMarkers())
        val update = KNMapCameraUpdate.
            tiltTo(0f).
            bearingTo(0f).
            fitTo(region)
        // targetTo를 추가한 경우 줌 레벨을 맞춘 이후 해당 위치로 이동되고 다시 이동된 위치에서
        // 모든 오브젝트가 노출될 수 있도록 줌 레벨을 재조정하게 됩니다.
        moveCamera(update)
    }
}
fun createMapImage(): KNMapImage? {
    return KNSDK.mapImageByViewWithSize(
            // contentView
            view,
            KNMapTheme.driveNight(),
            RectF(0f, 0f, 500f, 500f),
            // minRect: 비정상적인 높이/넓이 값을 반환하는 coordinateLayout 버그로 인해 정상적인 사이즈를 측정하지 못할 경우 사용되는 값
            RectF(0f, 0f, 500f, 500f))
}

fun moveCameraWithImageMap() {
    createMapImage()?.apply {
        val region = KNMapCoordinateRegion.initWithRoute(getRoutes())
        region.mergeWithMarkers(getMarkers())
        val update = KNMapCameraUpdate.
            tiltTo(0f).
            bearingTo(0f).
            fitTo(region)
        // targetTo를 추가한 경우 줌 레벨을 맞춘 이후 해당 위치로 이동되고 다시 이동된 위치에서
        // 모든 오브젝트가 노출될 수 있도록 줌 레벨을 재조정하게 됩니다.
        moveCamera(update)
    }
}
코드가 숨겨졌습니다.

cameraUpdate
KNMapCameraUpdate의 설정값

지도를 생성합니다. 생성이 완료된 이미지는 KNMiniMapimageLoadListener로 반환되며 생성에 실패할 경우 loadFailed가 호출됩니다.

fun generateMapWithCompletion( completion: KNMiniMapImageLoadListener )
예시 코드 generateMapWithCompletion
fun createMapImage(): KNMapImage? {
    return KNSDK.mapImageByViewWithSize(
            // contentView
            view,
            KNMapTheme.driveNight(),
            RectF(0f, 0f, 500f, 500f),
            // minRect: 비정상적인 높이/넓이 값을 반환하는 coordinateLayout 버그로 인해 정상적인 사이즈를 측정하지 못할 경우 사용되는 값
            RectF(0f, 0f, 500f, 500f))
}

fun regioRectWithImageMapGenerate(listener: KNMiniMapImageLoadListener) {
    createMapImage()?.apply {
        val region = KNMapCoordinateRegion.initWithRoute(getRoutes())
        region.mergeWithMarkers(getMarkers())
        // 계산 시 영역이 현재 화면을 넘어가는 경우 -값을 가질 수 있음.
        val screenRectF = getScreenRect(region)
        generateMapWithCompletion(listener)
    }
}
fun createMapImage(): KNMapImage? {
    return KNSDK.mapImageByViewWithSize(
            // contentView
            view,
            KNMapTheme.driveNight(),
            RectF(0f, 0f, 500f, 500f),
            // minRect: 비정상적인 높이/넓이 값을 반환하는 coordinateLayout 버그로 인해 정상적인 사이즈를 측정하지 못할 경우 사용되는 값
            RectF(0f, 0f, 500f, 500f))
}

fun regioRectWithImageMapGenerate(listener: KNMiniMapImageLoadListener) {
    createMapImage()?.apply {
        val region = KNMapCoordinateRegion.initWithRoute(getRoutes())
        region.mergeWithMarkers(getMarkers())
        // 계산 시 영역이 현재 화면을 넘어가는 경우 -값을 가질 수 있음.
        val screenRectF = getScreenRect(region)
        generateMapWithCompletion(listener)
    }
}
코드가 숨겨졌습니다.

현재 지도 기준 카텍(KATEC) 좌표를 화면 좌표로 변환합니다.

fun katecToScreen( katec: FloatPoint ): FloatPoint
예시 코드 katecToScreen:
fun createMapImage(): KNMapImage? {
    return KNSDK.mapImageByViewWithSize(
            // contentView
            view,
            KNMapTheme.driveNight(),
            RectF(0f, 0f, 500f, 500f),
            // minRect: 비정상적인 높이/넓이 값을 반환하는 coordinateLayout 버그로 인해 정상적인 사이즈를 측정하지 못할 경우 사용되는 값
            RectF(0f, 0f, 500f, 500f))
}

fun katecToScreenWithImageMap(katec: FloatPoint): FloatPoint {
   return createMapImage()?.katecToScreen(katec) ?: FloatPoint()
}
fun createMapImage(): KNMapImage? {
    return KNSDK.mapImageByViewWithSize(
            // contentView
            view,
            KNMapTheme.driveNight(),
            RectF(0f, 0f, 500f, 500f),
            // minRect: 비정상적인 높이/넓이 값을 반환하는 coordinateLayout 버그로 인해 정상적인 사이즈를 측정하지 못할 경우 사용되는 값
            RectF(0f, 0f, 500f, 500f))
}

fun katecToScreenWithImageMap(katec: FloatPoint): FloatPoint {
   return createMapImage()?.katecToScreen(katec) ?: FloatPoint()
}
코드가 숨겨졌습니다.

katec
카텍 좌표

현재 지도 기준 화면 좌표를 카텍(KATEC)좌표로 변환합니다.

fun screenToKatec( screen: FloatPoint ): FloatPoint
예시 코드 screenToKatec:
fun createMapImage(): KNMapImage? {
    return KNSDK.mapImageByViewWithSize(
            // contentView
            view,
            KNMapTheme.driveNight(),
            RectF(0f, 0f, 500f, 500f),
            // minRect: 비정상적인 높이/넓이 값을 반환하는 coordinateLayout 버그로 인해 정상적인 사이즈를 측정하지 못할 경우 사용되는 값
            RectF(0f, 0f, 500f, 500f))
}

fun screenToKatecWithImageMap(screen: FloatPoint): FloatPoint {
   return createMapImage()?.screenToKatec(screen) ?: FloatPoint()
}
fun createMapImage(): KNMapImage? {
    return KNSDK.mapImageByViewWithSize(
            // contentView
            view,
            KNMapTheme.driveNight(),
            RectF(0f, 0f, 500f, 500f),
            // minRect: 비정상적인 높이/넓이 값을 반환하는 coordinateLayout 버그로 인해 정상적인 사이즈를 측정하지 못할 경우 사용되는 값
            RectF(0f, 0f, 500f, 500f))
}

fun screenToKatecWithImageMap(screen: FloatPoint): FloatPoint {
   return createMapImage()?.screenToKatec(screen) ?: FloatPoint()
}
코드가 숨겨졌습니다.

screen
화면 좌표