Route

public class Route : NSObject

맵에 표시되는 Route를 나타내는 클래스.

Route는 Polyline/MapPolyline 과 마찬가지로 선을 그리는 기능을 하지만 경로선을 표현하기 위한 기능을 추가로 가지고 있다.

예를 들면 레벨별로 디테일 조절 처리가 들어간다. 즉, 상위 레벨일수록 RoutePoints가 rough하게 표시되며, 하위레벨일수록 자세하게 표시된다.

따라서 맵에 경로를 표시할 때 사용하기에 적절하다. show/hide/style 변경 등이 가능하다.

하나 이상의 RouteSegment로 이루어진다. Route는 레벨별로 디테일 조절 처리가 들어간다.

Route를 추가하기 위해서는 먼저 KakaoMap에 RouteLayer를 추가한 뒤, 해당 Layer에 Route를 추가한다.

Route는 사용자가 직접 생성할 수 없으며, RouteLayer를 통해 해당 Object를 얻을 수 있다.

Route Controls

  • Route를 보여준다.

    Declaration

    Swift

    @objc
    public func show()
  • Route를 숨긴다.

    Declaration

    Swift

    @objc
    public func hide()
  • Route의 style과 Data를 변경한다.

    Route의 Style과 함께 Route가 표시하는 RouteSegment Data를 변경하고자 할 때 사용한다. 단, RouteSegment Data를 바꿀때는 해당 Route 객체가 가리키는 본질이 변하지 않을때만 사용한다. 즉 전혀 다른 Route 객체일때는 Route를 하나 더 만드는것을 권장한다. ex. 경로 탐색 결과를 보여주고, 교통 정보가 업데이트 되어서 스타일과 segment가 바뀌어야 하는 경우. ex. 경로 탐색 결과를 여러개 보여주고, disabled route <-> enabled route 로 style 전환이 필요한 경우.

    Declaration

    Swift

    @objc
    public func changeStyleAndData(styleID: String, segments: [RouteSegment])

    Parameters

    styleID

    변경할 styleID

    segments

    변경할 route segments data.

Properties

  • Route의 ID

    Declaration

    Swift

    @objc
    public var routeID: String { get }
  • Route가 속한 Layer의 ID

    Declaration

    Swift

    @objc
    public var layerID: String { get }
  • Route의 렌더링 우선순위. 값이 클수록 위에 그려진다.

    새로운 zOrder로 assgin하면, 해당 Route의 zOrder가 업데이트된다.

    zOrder = 0인 Route는 zOrder = 1 인 Route보다 아래에 그려진다.

    Declaration

    Swift

    @objc
    public var zOrder: Int { get set }
  • Route가 표출되고있는지에 대한 여부를 가져온다.

    Declaration

    Swift

    @objc
    public var isShow: Bool { get }
  • 사용자 객체

    Declaration

    Swift

    @objc
    public var userObject: AnyObject? { get set }