원 그리기 링크 복사

KNMapCircle 객체를 생성하여 KNMapView에 객체를 등록하면 지도 위에 원을 추가할 수 있습니다.

원의 외곽선과 면 색상, 선의 종류 등은 KNMapCircle 클래스에서 설정합니다.

예시 코드 원 그리기
-(void)addCircle01 {
    IntPoint mapPos = [[KNSDK sharedInstance] convertWGS84ToKATECWithLongitude:127.11019081347423  latitude:37.3941851228957];
     
    KNMapCircle *circle = [KNMapCircle circleWithCenter:FloatPointMake(mapPos.x, mapPos.y) radius:100.0f];
    circle.strokeColor = [UIColor redColor];
    circle.fillColor = [UIColor blueColor];
    circle.strokeWidth = STROKE_WIDTH;
    circle.strokeDashType = KNLineDashType_Solid;
    circle.isVisible = YES;
    circle.priority = PRIORITY;
    circle.tag = CIRCLE_01;
    [self->mapView addCircle:circle];
}
-(void)addCircle01 {
    IntPoint mapPos = [[KNSDK sharedInstance] convertWGS84ToKATECWithLongitude:127.11019081347423  latitude:37.3941851228957];
     
    KNMapCircle *circle = [KNMapCircle circleWithCenter:FloatPointMake(mapPos.x, mapPos.y) radius:100.0f];
    circle.strokeColor = [UIColor redColor];
    circle.fillColor = [UIColor blueColor];
    circle.strokeWidth = STROKE_WIDTH;
    circle.strokeDashType = KNLineDashType_Solid;
    circle.isVisible = YES;
    circle.priority = PRIORITY;
    circle.tag = CIRCLE_01;
    [self->mapView addCircle:circle];
}
코드가 숨겨졌습니다.

원 지우기 링크 복사

removeCircle 함수를 사용하여 추가한 원을 삭제할 수 있습니다.

예시 코드 원 지우기
-(void)removeCircle01 {
    NSArray* circles = [self getCirclesWithTag:CIRCLE_01];
    for (KNMapCircle *circle in circles) {
        [self->mapView removeCircle:circle];
    }
}
-(void)removeCircle01 {
    NSArray* circles = [self getCirclesWithTag:CIRCLE_01];
    for (KNMapCircle *circle in circles) {
        [self->mapView removeCircle:circle];
    }
}
코드가 숨겨졌습니다.

선 그리기 링크 복사

KNMapPolyline 객체를 생성하여 KNMapView에 객체를 등록하면 지도 위에 선을 추가할 수 있습니다.

선 색상, 선의 종류 등은 KNMapPolyline 클래스에서 설정합니다.

예시 코드 선 그리기
-(void)addLine01 {
    ObjectLoader *objectLoader = [[ObjectLoader alloc] initWithFile:[[NSBundle mainBundle] pathForResource:@"testcase2.csv" ofType:nil]];
     
    KNMapPolyline *mapPolyline = [KNMapPolyline polylineWithPoints:objectLoader.position countPoints:objectLoader.positionCnt];
    mapPolyline.lineColor = [UIColor redColor];
    mapPolyline.lineDashType = KNLineDashType_Solid;
    mapPolyline.lineWidth = STROKE_WIDTH;
    mapPolyline.isVisible = YES;
    mapPolyline.priority = PRIORITY;
    mapPolyline.tag = POLYLINE_01;
    [self->mapView addPolyline:mapPolyline];
}
-(void)addLine01 {
    ObjectLoader *objectLoader = [[ObjectLoader alloc] initWithFile:[[NSBundle mainBundle] pathForResource:@"testcase2.csv" ofType:nil]];
     
    KNMapPolyline *mapPolyline = [KNMapPolyline polylineWithPoints:objectLoader.position countPoints:objectLoader.positionCnt];
    mapPolyline.lineColor = [UIColor redColor];
    mapPolyline.lineDashType = KNLineDashType_Solid;
    mapPolyline.lineWidth = STROKE_WIDTH;
    mapPolyline.isVisible = YES;
    mapPolyline.priority = PRIORITY;
    mapPolyline.tag = POLYLINE_01;
    [self->mapView addPolyline:mapPolyline];
}
코드가 숨겨졌습니다.

선 지우기 링크 복사

removePolyline 함수를 사용하여 추가한 선을 삭제할 수 있습니다.

예시 코드 선 지우기
-(void)removeLine01 {
    NSArray* lines = [self getPolylinesWithTag:POLYLINE_01];
    for (KNMapPolyline *line in lines) {
        [self->mapView removePolyline:line];
    }
}
-(void)removeLine01 {
    NSArray* lines = [self getPolylinesWithTag:POLYLINE_01];
    for (KNMapPolyline *line in lines) {
        [self->mapView removePolyline:line];
    }
}
코드가 숨겨졌습니다.

폴리곤(다각형) 그리기 링크 복사

KNMapPolygon 객체를 생성하여 KNMapView에 객체를 등록하면 지도 위에 폴리곤(다각형)을 추가할 수 있습니다.

폴리곤의 외곽선과 면 색상, 선의 종류 등은 KNMapPolygon 클래스에서 설정합니다.

예시 코드 폴리곤(다각형) 그리기
-(void)addPolygon01 {
    ObjectLoader *objectLoader = [[ObjectLoader alloc] initWithFile:[[NSBundle mainBundle] pathForResource:@"testcase5.csv" ofType:nil]];
     
    KNMapPolygon* polygon = [[KNMapPolygon alloc] polygonWithPoints:objectLoader.position countPoints:objectLoader.positionCnt];
    polygon.fillColor = [UIColor redColor];
    polygon.strokeColor = [UIColor greenColor];
    polygon.strokeWidth = STROKE_WIDTH;
    polygon.strokeDashType = KNLineDashType_Solid;
    polygon.isVisible = YES;
    polygon.priority = PRIORITY;
    polygon.tag = POLYGON_01;
     
    if(objectLoader.holeCnt > 0)
    {
        [polygon addHoleWithPoints:objectLoader.holePosition countPoints:objectLoader.holeCnt];
    }
    [self->mapView addPolygon:polygon];
-(void)addPolygon01 {
    ObjectLoader *objectLoader = [[ObjectLoader alloc] initWithFile:[[NSBundle mainBundle] pathForResource:@"testcase5.csv" ofType:nil]];
     
    KNMapPolygon* polygon = [[KNMapPolygon alloc] polygonWithPoints:objectLoader.position countPoints:objectLoader.positionCnt];
    polygon.fillColor = [UIColor redColor];
    polygon.strokeColor = [UIColor greenColor];
    polygon.strokeWidth = STROKE_WIDTH;
    polygon.strokeDashType = KNLineDashType_Solid;
    polygon.isVisible = YES;
    polygon.priority = PRIORITY;
    polygon.tag = POLYGON_01;
     
    if(objectLoader.holeCnt > 0)
    {
        [polygon addHoleWithPoints:objectLoader.holePosition countPoints:objectLoader.holeCnt];
    }
    [self->mapView addPolygon:polygon];
코드가 숨겨졌습니다.

폴리곤(다각형) 지우기 링크 복사

removePolygon 함수를 사용하여 추가한 폴리곤(다각형)을 삭제할 수 있습니다.

예시 코드 폴리곤(다각형) 지우기
-(void)removePolygon01 {
    NSArray* polygons = [self getPolygonsWithTag:POLYGON_01];
    for (KNMapPolygon *polygon in polygons) {
        [self->mapView removePolygon:polygon];
    }
}
-(void)removePolygon01 {
    NSArray* polygons = [self getPolygonsWithTag:POLYGON_01];
    for (KNMapPolygon *polygon in polygons) {
        [self->mapView removePolygon:polygon];
    }
}
코드가 숨겨졌습니다.