JSMap

지도 설정 및 제어하기 위한 API 입니다.

Module.getMap() API를 생성합니다.

var map = Module.getMap();

Function

addHeatMaps(coordinates)

히트맵 좌표 목록 추가합니다.

Name
Type
Description

coordinates

히트맵 위치 좌표(경도, 위도, 고도) 목록.

addInputPoint(lon, lat) → number

사용자 입력 지점을 추가합니다.

Name
Type
Description

lon

number

경도 좌표 (degrees 단위).

lat

number

위도 좌표 (degrees 단위).

  • Return

    • number: 등록된 사용자 입력 지점 총 수.

clearHeatMap()

히트맵을 초기화 합니다.

clearInputPoint()

사용자 입력 좌표 목록을 초기화 합니다.

clearSelectObj()

지도 내 선택된 모든 오브젝트를 선택 해제 상태로 변환합니다.

clearSnowfallArea()

적설 효과를 초기화 합니다.

getInputPointCount() → number

사용자 입력 좌표 목록 개수를 반환합니다.

  • Return

    • result >= 0 : 반환 성공.

    • -1: 반환 실패.

getInputPointList() → Collection

사용자 입력 좌표(경도, 위도, 고도)를 모두 반환합니다.

getInputPoints() → JSVec3Array

사용자 입력 좌표(경도, 위도, 고도)를 모두 반환합니다.

getTerrHeight(lon, lat) → number

입력 변수값(lon, lat)의 해발고도 기준 지형 높이값을 반환합니다.

Name
Type
Description

lon

number

경도.

lat

number

위도.

  • Return

    • result > 0: 반환 성공.

    • 0: 반환 실패

    • 실패 조건

      • 해당 지형 고도 데이터가 지도에 요청 되지 않는 경우.

      • 요청 지형 레벨이 낮은 경우.

GetPointDistance(from, to, type) → number

입력 변수값(from, to) 두 지점의 실제 거리를 반환합니다.

Name
Type
Description

from

시작 좌표 (경도, 위도, 고도)

to

종료 좌표 (경도, 위도, 고도)

type

boolean

지형 결합 유무를 설정합니다. true: 지형 결합 거리. false: 직선 거리.

  • Return

    • result > 0: 반환 성공.

    • 0: 반환 실패

getLineBuffer(coordinates, distance) → JSVec2Array

입력 변수값(coordinates)을 기준으로 직선에 대한 buffer의 폴리곤 좌표 목록을 반환합니다.

입력 변수값(distance)를 기준으로 버퍼 영역을 설정합니다.

Name
Type
Description

coordinates

선 좌표 목록 (경위도).

distance

number

buffer의 반지름 크기 (meter 단위).

MapRender()

3D 지도 화면을 재 갱신합니다.

MapToScreenPointEX(position) → JSVector2D

3D 지도에서 특정 지점에 대한 화면 좌표를 반환합니다.

Name
Type
Description

position

지도 위치 좌표 (경도, 위도, 고도).

ScreenToMapPointEX(position) → JSVector3D

화면 좌표에서 특정 지점에 대한 3D 지도 좌표를 반환합니다.

Name
Type
Description

position

화면 좌표 (x, y).

setCircleInputPoint(center, radius, segment)

특정 지점에 대한 반경 좌표 목록을 반환합니다.

입력 변수값(center)을 기준으로 입력 변수값(radius)을 반지름으로 반경에 대한 좌표를 반환합니다.

입력 변수값(segment)으로 반경을 정밀도를 설정합니다.

Name
Type
Description

center

반경의 중심 좌표(경도 위도).

radius

number

반경의 반지름 (meters 단위).

segment

number

반경의 정밀도.

setDistance(distance)

히트맵 반경거리를 설정합니다.

Name
Type
Description

distance

number

히트맵 영역 거리.

setEffectDistance(max)

홍수, 적설, 히트맵 가시화 최대 거리를 설정합니다.

Name
Type
Description

max

number

가시화 최대 가시거리.

setSnowfallArea(array)

적설 효과를 표현할 영역을 설정합니다.

Name
Type
Description

array

영역 좌표 목록 (경도, 위도, 고도).

setSnowfallColor(color)

적설 효과에서 표현되는 색상을 설정합니다.

Name
Type
Description

color

적설 색상.

setTerrLODRatio(ratio)

지형 LOD 요청 거리 비율을 설정합니다.

설정에 따라 먼거리에서 정밀한 지형 데이터가 가시화 됩니다.

<LOD에 따른 지형 갱신 거리> = \ratio * <지형 메쉬 사이즈>

Name
Type
Description

ratio

number

갱신 거리 비율.

setWeight(weight)

히트맵 가중치를 설정합니다.

Name
Type
Description

weight

number

히트맵 가중치.

setFog(color, start, end, density)

안개 효과를 설정합니다.

Name
Type
Description

color

안개 색상.

start

number

가시화 최소 거리 (최소값 1).

end

number

가시화 최대 거리.

density

number

안개 농도 (0.0 and 1.0 사이값).

setFogEnable(type)

안개효과 가시화 유무를 설정합니다.

Name
Type
Description

type

boolean

true: 안개 효과 가시화. false: 안개 효과 비가시화

setRainImageURL(url) → boolean

비 효과에 사용할 이미지를 설정합니다.

Name
Type
Description

url

string

이미지 경로.

  • Return

    • true: 설정 성공.

    • false: 설정 실패.

  • Sample

setSnowfall(state)

지형에 적설 효과적설 가시화 유무를 설정합니다.

Name
Type
Description

state

number

0: 지형 적설 효과 비가시화 1: 지형 적설 효과 가시화

setSnowfallLevel(level) → number

적설 교과 가시화 중 적설 적설량 설정합니다.

Name
Type
Description

level

number

적설량(0~100 사이값).

  • Return

    • number: 설정된 적설량.

  • Sample

setSnowImageURL(url) → boolean

적설 효과 시 눈 이미지를 설정합니다.

Name
Type
Description

url

string

눈 표현 이미지 경로.

  • Return

    • true: 설정 성공.

    • false: 설정 실패.

  • Sample

startWeather(type, size, speed) → boolean

날씨 효과 가시화 유무를 설정합니다.

Name
Type
Description

type

number

날씨 유형(0: 눈, 1: 비).

size

number

날씨 강도 (0: 약함, 1: 보통, 2: 강항).

speed

number

날씨 표현 속도 (0: 느림, 1: 보통, 2: 빠름).

  • Return

    • true: 설정 성공.

    • false: 설정 실패.

  • Sample

stopWeather()

날씨 효과 기능을 비활성화 합니다.

setSimpleMode(type) → boolean

시설물 색상 표현 심플 모드 설정합니다.

시설물 텍스쳐가 없는 색상으로 가시화 됩니다.

Name
Type
Description

type

boolean

true: 심플 모드 활성화. false: 심플 모드 비활성화.

setTerrainEffect(value)

지형 가시화 효과를 설정합니다.

Name
Type
Description

value

number

지형 가시화 효과 (0: 일반, 10: 경사향, 11: 경사도)

updateRTT()

3D 지도에 RTT 가시화를 재 갱신합니다.

Getter / Setter

getSelectObject(), setSelectObject(object) → JSObject

객체의 선택 상태를 설정합니다.

Name
Type
Description

object

시설물 객체.

getFogLimitAltitude(), setFogLimitAltitude(altitude) → number

안개 효과가 적용되는 영역에 대한 고도값을 설정합니다.

카메라가 반환 고도 아래에 있으면 안개효과가 적용됩니다.

Name
Type
Description

altitude

number

안개 효과 높이 (meter 단위).

  • Return

    • number: 안개 효과가 적용된 해발고도 기준 높이값.

  • Sample

getPathIntervalPositions(path, interval, isUnionTerrain) → JSVec3Array

경위도 경로를 일정 간격으로 나눈 좌표 목록을 반환합니다.

Parameters

Name
Type
Description

path

경위도 경로 좌표 목록

interval

number

간격 (meter 단위)

isUnionTerrain

boolean

true: 지형 반영, false: 단순 표면

Returns

Sample

let path = new Module.JSVec3Array();
path.push(new Module.JSVector3D(127.0, 37.5, 0));
path.push(new Module.JSVector3D(127.01, 37.51, 0));

let result = Module.getMap().getPathIntervalPositions(path, 50, true);

getTerrHeightFast(lon, lat) → number

입력한 경도(lon), 위도(lat) 기준의 지형 고도 값을 빠르게 반환합니다. 일반 getTerrHeight보다 성능이 빠르지만, 정밀도는 약간 낮을 수 있습니다.

Name
Type
Description

lon

number

경도 (degrees 단위)

lat

number

위도 (degrees 단위)

  • Return

    • number: 지형 고도 값 (meter 단위)

    • 0: 고도 요청 실패

getPositionByAngleDistance3D(position, distance, angle) → JSVector3D

기준 좌표(position)에서 주어진 거리(distance)와 방위각(angle)을 기반으로 계산된 위치를 반환합니다. 방위각은 북쪽을 기준으로 시계 방향으로 증가합니다.

Name
Type
Description

position

기준 위치 (경도, 위도, 고도).

distance

number

이동 거리 (meters 단위).

angle

number

이동 방향 각도 (degrees, 북쪽 기준 시계방향).

  • Return

    • JSVector3D: 이동 결과 위치 (경도, 위도, 고도)

getAreaIntervalPositions(area, intervalVertical, intervalHorizontal, direction) → JSVec3Array

주어진 다각형 영역(area) 안에 일정 간격(intervalVertical, intervalHorizontal)으로 점을 분포시켜 반환합니다. direction 값에 따라 정렬 방향을 조절할 수 있으며, 각 점은 실제 지형고도를 반영하여 3D 좌표로 반환됩니다.

Name
Type
Description

area

영역 경계 좌표 목록 (경도, 위도, 고도).

intervalVertical

number

세로 간격 (meter 단위).

intervalHorizontal

number

가로 간격 (meter 단위).

direction

number

정렬 기준 각도 (degrees). 북쪽 기준 시계방향으로 회전

  • Return

    • JSVec3Array: 영역 내부 일정 간격으로 분포된 위치 리스트 (경도, 위도, 고도)

setHeatMapOpacity(opacity)

히트맵의 투명도를 설정합니다. 값이 작을수록 히트맵이 더 투명하게 표시됩니다.

Name
Type
Description

opacity

float

히트맵 투명도 (0.0 ~ 1.0 사이값).

  • 0.0: 완전히 투명

  • 1.0: 완전히 불투명

setDefaultHeatMapColor()

히트맵 색상을 기본 색상으로 초기화합니다.

  • 현재 설정된 사용자 정의 히트맵 색상 구성을 제거하고, 엔진 기본 색상 구성을 복원합니다.

  • 히트맵 표현이 초기 상태로 재설정됩니다.

setHeatMapColor(colors)

히트맵 색상 구성 목록을 설정합니다.

Name
Type
Description

colors

JSColor의 배열.

  • 최소 2개 이상의 색상이 필요합니다.

  • 설정된 색상은 낮은 밀도부터 높은 밀도까지 순차적으로 적용됩니다.

getPositionByAngleDistance3D(position, distance, angle) → JSVector3D

입력 위치로부터 특정 각도와 거리만큼 떨어진 지점의 좌표를 반환합니다.

반환 좌표는 경위도 및 고도 형태입니다.

Name
Type
Description

position

기준 위치 (경도, 위도, 고도).

distance

number

거리 (meter 단위).

angle

number

방향 (degrees, 북쪽 기준 시계방향 각도 0~360도).

  • 거리 < 0 또는 각도가 0~360 범위를 벗어나면 null 벡터가 반환됩니다.

  • 결과 좌표는 입력 기준점에서 북쪽 기준 angle 각도 방향으로 distance만큼 이동한 지점을 의미합니다.

Last updated

Was this helpful?