원 그리기 링크 복사
KNMapCircle 객체를 생성하여 KNMapView에 객체를 등록하면 지도 위에 원을 추가할 수 있습니다.
원의 외곽선과 면 색상, 선의 종류 등은 KNMapCircle 클래스에서 설정합니다.
예시 코드
원 그리기
private fun circleAdd() {
val polygonData = mutableListOf<KNTestCaseManager.PolygonData>()
KNTestCaseManager.testCaseData["testcase11.csv"]?.apply {
if (typeCase.trim() != KNTestCaseManager.CIRCLE) return@apply
polygonData.add(this)
}
if (polygonData.isEmpty()) {
polygonData.add(KNTestCaseManager.PolygonData(KNTestCaseManager.CIRCLE,
listOf(WGS84ToKATEC(127.11019081347423, 37.3941851228957)),
mutableListOf(),
100f))
}
polygonData.forEach {
this@FragmentMapSample00.mapView.addCircle(KNMapCircle(it.point.first(),it.radius,
fillColor = Color.TRANSPARENT).apply {
testType2.add(this)
})
}
}
private fun circleAdd() {
val polygonData = mutableListOf<KNTestCaseManager.PolygonData>()
KNTestCaseManager.testCaseData["testcase11.csv"]?.apply {
if (typeCase.trim() != KNTestCaseManager.CIRCLE) return@apply
polygonData.add(this)
}
if (polygonData.isEmpty()) {
polygonData.add(KNTestCaseManager.PolygonData(KNTestCaseManager.CIRCLE,
listOf(WGS84ToKATEC(127.11019081347423, 37.3941851228957)),
mutableListOf(),
100f))
}
polygonData.forEach {
this@FragmentMapSample00.mapView.addCircle(KNMapCircle(it.point.first(),it.radius,
fillColor = Color.TRANSPARENT).apply {
testType2.add(this)
})
}
}
코드가 숨겨졌습니다.
원 지우기 링크 복사
removeCircle 함수를 사용하여 추가한 원을 삭제할 수 있습니다.
예시 코드
원 지우기
private fun circleRemove() {
testType2.forEach {
this@FragmentMapSample00.mapView.removeCircle(it)
}
testType2.clear()
}
private fun circleRemove() {
testType2.forEach {
this@FragmentMapSample00.mapView.removeCircle(it)
}
testType2.clear()
}
코드가 숨겨졌습니다.
선 그리기 링크 복사
KNMapPolyline 객체를 생성하여 KNMapView에 객체를 등록하면 지도 위에 선을 추가할 수 있습니다.
선 색상, 선의 종류 등은 KNMapPolyline 클래스에서 설정합니다.
예시 코드
선 그리기
private fun lineAdd() {
val polygonData = mutableListOf<KNTestCaseManager.PolygonData>()
KNTestCaseManager.testCaseData["testcase2.csv"]?.apply {
if (this.typeCase.trim() != KNTestCaseManager.POLYLINE) return
polygonData.add(this)
}
polygonData.forEach {
this@FragmentMapSample00.mapView.addPolyline(KNMapPolyline(it.point, lineWidth = 5f, lineColor = Color.MAGENTA).apply {
testType1.add(this)
})
}
}
private fun lineAdd() {
val polygonData = mutableListOf<KNTestCaseManager.PolygonData>()
KNTestCaseManager.testCaseData["testcase2.csv"]?.apply {
if (this.typeCase.trim() != KNTestCaseManager.POLYLINE) return
polygonData.add(this)
}
polygonData.forEach {
this@FragmentMapSample00.mapView.addPolyline(KNMapPolyline(it.point, lineWidth = 5f, lineColor = Color.MAGENTA).apply {
testType1.add(this)
})
}
}
코드가 숨겨졌습니다.
선 지우기 링크 복사
removePolyline 함수를 사용하여 추가한 선을 삭제할 수 있습니다.
예시 코드
선 지우기
private fun lineRemove() {
testType1.forEach {
this@FragmentMapSample00.mapView.removePolyline(it)
}
testType1.clear()
}
private fun lineRemove() {
testType1.forEach {
this@FragmentMapSample00.mapView.removePolyline(it)
}
testType1.clear()
}
코드가 숨겨졌습니다.
폴리곤(다각형) 그리기 링크 복사
KNMapPolygon 객체를 생성하여 KNMapView에 객체를 등록하면 지도 위에 폴리곤(다각형)을 추가할 수 있습니다.
폴리곤의 외곽선과 면 색상, 선의 종류 등은 KNMapPolygon 클래스에서 설정합니다.
예시 코드
폴리곤(다각형) 그리기
private fun polygonAdd() {
val polygonData = mutableListOf<KNTestCaseManager.PolygonData>()
KNTestCaseManager.testCaseData["testcase6.csv"]?.apply {
if (this.typeCase.trim() != KNTestCaseManager.POLYGON) return
polygonData.add(this)
}
polygonData.forEach {
this@FragmentMapSample00.mapView.addPolygon(KNMapPolygon(it.point).apply {
testType3.add(this)
})
}
}
private fun polygonAdd() {
val polygonData = mutableListOf<KNTestCaseManager.PolygonData>()
KNTestCaseManager.testCaseData["testcase6.csv"]?.apply {
if (this.typeCase.trim() != KNTestCaseManager.POLYGON) return
polygonData.add(this)
}
polygonData.forEach {
this@FragmentMapSample00.mapView.addPolygon(KNMapPolygon(it.point).apply {
testType3.add(this)
})
}
}
코드가 숨겨졌습니다.
구멍이 있는 폴리곤(다각형) 그리기 링크 복사
addHole 함수를 이용하여 폴리곤에 구멍을 생성할 수 있습니다.
폴리곤 구멍의 외곽선과 면 색상, 선의 종류 등은 KNMapPolygon 클래스에서 설정합니다.
예시 코드
구멍이 있는 폴리곤(다각형) 그리기
private fun polygonWithHoleAdd() {
val polygonData = mutableListOf<KNTestCaseManager.PolygonData>()
KNTestCaseManager.testCaseData["testcase5.csv"]?.apply {
if (this.typeCase.trim() != KNTestCaseManager.POLYGON) return
polygonData.add(this)
}
polygonData.forEach {
this@FragmentMapSample00.mapView.addPolygon(KNMapPolygon(it.point).apply {
addHole(it.hole)
testType4.add(this)
})
}
}
private fun polygonWithHoleAdd() {
val polygonData = mutableListOf<KNTestCaseManager.PolygonData>()
KNTestCaseManager.testCaseData["testcase5.csv"]?.apply {
if (this.typeCase.trim() != KNTestCaseManager.POLYGON) return
polygonData.add(this)
}
polygonData.forEach {
this@FragmentMapSample00.mapView.addPolygon(KNMapPolygon(it.point).apply {
addHole(it.hole)
testType4.add(this)
})
}
}
코드가 숨겨졌습니다.
폴리곤(다각형) 지우기 링크 복사
removePolygon 함수를 사용하여 추가한 폴리곤(다각형)을 삭제할 수 있습니다.
예시 코드
폴리곤(다각형) 지우기
private fun polygonWithHoleRemove() {
testType4.forEach {
this@FragmentMapSample00.mapView.removePolygon(it)
}
testType4.clear()
}
private fun polygonWithHoleRemove() {
testType4.forEach {
this@FragmentMapSample00.mapView.removePolygon(it)
}
testType4.clear()
}
코드가 숨겨졌습니다.