GeoJSONSource 입니다.

[GeoJSONSource 생성 방법]

Example

let source_point:ktGms.source.GeoJSONSource = new ktGms.source.GeoJSONSource('geojsonSource_point', {
data: [new ktGms.geometry.PointGeo([127.017422, 37.49144],{}),
new ktGms.geometry.PointGeo([127.018522, 37.49144],{}),
new ktGms.geometry.PointGeo([127.018522, 37.49294],{})],
maxzoom: 18,
cluster: true,
attribution: "Attribution",
buffer: 128,
clusterRadius: 200,
});

// 소스는 스타일 세부정보가 포함되어 있지 않기 때문에 레이어와 함께 사용해서 지도에 데이터 표출이 가능합니다.
map.on(ktGms.event.MapDefaultEvent.type.load, (event:ktGms.event.MapDefaultEvent) => {
let layer:ktGms.layer.PointLayer = new ktGms.layer.PointLayer('layerId', style, source_point);
layer.addTo(map);
});

See

Hierarchy

  • GeoJSONSource

Implements

Constructors

  • GeoJSONSource class의 생성자입니다.

    Parameters

    • id: string

      생성할 GeoJSONSource의 id입니다.

    • options: GeoJSONSourceOption

      생성할 GeoJSONSource의 옵션입니다.

    Returns GeoJSONSource

Properties

id: string

생성할 소스의 id입니다. 지도에 소스를 추가할 때는 중복되는 소스 id를 허용하지 않습니다.

data?: string | Geometry | Geometry[]

GeoJSON 소스의 데이터입니다. GeoJSON 파일의 url, GeoJSON, Geometry, Geometry[]를 입력으로 사용할 수 있습니다.

maxzoom?: number = 18

벡터타일을 생성할 최대 줌 레벨입니다.

Default

18
attribution?: string

맵이 사용자에게 보여질 때 표출될 attribution입니다.

buffer?: number

각 타일의 버퍼 크기입니다. 값이 0인 경우 버퍼를 생성하지 않고, 값이 512인 경우 타일 크기의 버퍼를 생성합니다.

Default

128
filter?: unknown

렌더링 전에 feature를 필터링하기 위한 표현식입니다.

tolerance?: number

Douglas-Peucker 단순화 호용 오차를 의미합니다.
값이 높을수록 도형이 단순해지고 성능이 빨라집니다.

Default

0.375
cluster?: boolean

point의 클러스터링 여부입니다. datapointfeatureCollection이고, clustertrue로 설정한 경우 point가 클러스터링 됩니다.
클러스터링된 그룹은 다음과 같은 속성을 가진 새로운 point가 됩니다.

  • cluster : 클러스터링된 경우 true 반환
  • cluster_id : 클러스터의 고유 번호(클러스터 결합에 사용)
  • point_count : 클러스터에 포함된 original points의 개수
  • point_count_abbreviated : 축약된 point의 개수

Default

false
clusterRadius?: number

cluster가 활성화된 각 클러스터의 반경입니다. 값이 512인 경우 타일 너비와 동일한 반지름을 나타냅니다.

Default

50
clusterMaxZoom?: number

cluster가 활성화된 경우, point를 클러스터링할 최대 확대/축소 줌 레벨입니다.
기본값은 (maxzoom - 1) 확대/축소 줌 레벨입니다(최대 줌인 경우 클러스터링 되지 않음). 클러스터는 정수의 줌 레벨로 재평가됩니다(clusterMaxZoom을 14로 설정한 경우, 줌 레벨이 15가 될때까지 클러스터로 표출됩니다).

clusterMinPoints?: number

클러스터링하기 위해 필요한 최소 point의 개수입니다.

Default

2
clusterProperties?: unknown

생성된 클러스터의 사용자 지정 속성 정의 객체입니다.
{"property_name": [operator, map_expression]} 형태를 가집니다.

  • operator는 최소 두 개의 operand를 포함합니다. (클러스터가 포함하는 point에서 속성값이 누적됩니다.)
  • map_expression은 하나의 point를 생성합니다.

Example

{"sum": ["+", ["get", "scalerank"]]}
{"sum": [["+", ["accumulated"], ["get", "sum"]], ["get", "scalerank"]]}
lineMetrics?: boolean

line distance metrics 계산 여부입니다. line distance metrics는 line layer의 line-gradient 값을 특정할 때 필요합니다.

Default

false
generateId?: boolean

geojson feature의 id 생성 여부입니다. 이 값이 true인 경우 feature.id 속성이 자동으로 할당됩니다. id는 feature 배열의 인덱스에 기반하여 생성되고, 이전 값들은 덮어쓰여 집니다.

Default

false
promoteId?: PromoteIdSpecification

feature id로 사용할 속성입니다. 속성명 또는 객체 형식입니다.

Example

{<sourceLayer>: <propertyName>}
map?: Map

Methods

  • GeoJSONSource 소스 타입에 필요한 명세 객체를 만들어주는 함수입니다.

    Returns GeoJSONSourceOption

  • 지도에 GeoJSONSource를 추가합니다. 이미 동일한 id의 소스가 존재하는 경우 GeoJSONSource는 추가 되지 않습니다.

    Parameters

    • map: Map

      레이어를 추가할 맵입니다.

    Returns void

  • GeoJSON data를 설정하고 map을 리렌더링하는 함수입니다.

    Parameters

    • data: string | Geometry | Geometry[]

      data와 동일하게 GeoJSON 파일의 url, GeoJSON, Geometry, Geometry[]을 입력으로 사용할 수 있습니다.

    Returns void

  • GeoJSONSource 생성 시 cluster:true로 했을 때 사용 가능한 메소드입니다.
    clusterId로 클러스터 된 소스의 경우 다음 zoom 레벨에서 지정된 클러스터의 하위 항목을 GeoJSON의 피쳐 배열로 반환합니다.

    Parameters

    • clusterId: number

      검색할 클러스터 ID 값입니다

    • callback: ((arg) => void)

      호출될 콜백함수입니다

        • (arg): void
        • Parameters

          • arg: Feature<Geometry, {
                [name: string]: any;
            }>[]

          Returns void

    Returns void

  • GeoJSONSource 생성 시 cluster:true로 했을 때 사용 가능한 메소드입니다.
    clusterId로 클러스터 된 소스의 경우 지정된 클러스터가 확장되는 zoom 레벨을 반환합니다.

    Parameters

    • clusterId: number

      검색할 클러스터 ID 값입니다

    • callback: ((arg) => void)

      호출될 콜백함수입니다

        • (arg): void
        • Parameters

          • arg: number

          Returns void

    Returns Promise<void>

  • GeoJSONSource 생성 시 cluster:true로 했을 때 사용 가능한 메소드입니다.
    clusterId로 클러스터 된 소스의 경우 해당 클러스터에 속한 소스들을 GeoJSON의 피쳐 배열로 반환합니다.

    Parameters

    • clusterId: number

      검색할 클러스터 ID 값입니다

    • limit: number

      반환할 최대 피쳐 개수입니다

    • offset: number

      건너뛸 피쳐 개수입니다(페이징 같은 기능입니다)

    • callback: ((arg) => void)

      호출될 콜백함수입니다

        • (arg): void
        • Parameters

          • arg: Feature<Geometry, {
                [name: string]: any;
            }>[]

          Returns void

    Returns Promise<void>

  • GeoJSONSource 생성 후 cluster 관련 옵션을 변경할 수 있는 메소드입니다.

    Parameters

    • options: {
          cluster?: boolean;
          clusterMaxZoom?: number;
          clusterRadius?: number;
      }

      설정할 옵션

      • Optional cluster?: boolean
      • Optional clusterMaxZoom?: number
      • Optional clusterRadius?: number

    Returns GeoJSONSource

Generated using TypeDoc