npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

dabeeomaps_api_directions

v1.12.5

Published

navigation server for editor 4.0

Downloads

386

Readme

dabeeomaps_library_navigation_4

navigation module for studio4

description

  • typescript로 개발
  • dist: npm publish 에서 사용하는 폴더
  • build: node server용 폴더
  • make: npm publish 전용 빌드

get started

  • npm run dev : 개발 모드
  • npm run dist : npm 에 배포하기 위한 준비. (release시 실행됨)

npm publish

https://www.npmjs.com/package/dabeeomaps_api4_directions_4

Version History

  • 1.0.2 : npm publish
  • 1.0.3
    • @2024.03.18
    • object내부에 노드 있는 경우 이슈 처리
    • CR
  • 1.0.4
    • @2024.03.25
    • studio3, 4 네비게이션 길찾기 모듈 통합
    • CR
  • 1.0.5
    • @2024.03.28
    • 통합지도에서 인도어 <-> 아웃도어 길찾기시 잘못된 경로로 길찾기 되는 이슈 수정
    • CR
  • 1.1.1
    • @2024.04.02
    • 목적지 사선으로 연결되는 이슈 수정
    • CR
  • 1.1.2
    • @2024.04.03
    • 목적지 사선으로 연결되는 이슈 수정할 때, transcode null 처리 추가
  • 1.1.3
    • @2024.04.03
    • ELEVATOR_UP, ELEVATOR_DOWN transcode type 추가
    • 길찾기 실패원인 반환
    • CR
  • 1.1.4
    • @2024.04.05
    • 연결링크가 connect node간의 연결링크 혹은 entrance node간의 연결링크면 그 다음으로 가까운 링크를 선택
    • CR
  • 1.2.1
    • @2024.04.09
    • 가장 가까운 연결링크가 connect node간의 연결링크 혹은 entrance node간의 연결링크면, 같은 층의 노드를 nearestNode로 선택
    • CR
    • 존재하지 않는 poiId, objectId로 길찾기 요청시 에러 반환
    • CR
  • 1.2.2
    • @2024.04.11
    • 출도착지 Object에 Opening Node가 여러개 있을 시 길찾기 최적의 Opening을 선택하여 길찾기
    • CR
  • 1.3.1
    • @2024.05.09
    • 출도착지 둘중 하나만 multiOpening일 경우 길찾기 안되는 이슈 수정
    • CR
  • 1.4.1
    • @2024.05.16
    • 길찾기 POI 기준 경로 안내 기능 개발
    • CR
  • 1.5.1
    • @2024.05.22
    • 이동수단이 엘리베이터 이후 안내시 엘리베이터 다음 구간 유턴으로 전달
    • CR
    • 길찾기 POI 기준 경로 안내 기능 세부 로직 변경
    • CR
  • 1.6.1
    • @2024.05.29
    • 2층에 목적지가 있으나 1층까지만 구간안내 하는 경우 이슈 수정
    • 엘리베이터 이동경로와 추천 이동경로가 다르게 나오는 현상 수정
    • CR
  • 1.6.2
    • @2024.05.31
    • mapData.getCategoryDistance 카테고리의 POI를 가져올 때 시간이 오래 걸림
    • CR
  • 1.7.1
    • @2024.06.11
    • opening 가상 노드 생성 로직이 3.0에는 사용하지 않도록 처리
    • 가상노드를 생성시 가상노드가 들어가기 이전번째 좌표와 이후번째 좌표가 가상노드 좌표와 같지 않을 때만 가상노드를 생성하도록 수정
    • CR
  • 1.8.1
    • @2024.08.21
    • studio3.0에서 출도착지 object와 연결된 node가 있다면 연결된 노드중 최적화된 노드를 찾아서 경로 안내 -> 없다면 가장 가까운 경로상에서 최적의 노드를 찾아 경로 안내
    • CR
    • 통합지도 길찾기 거리계산시 georeferencing transform 값 반영
    • CR
  • 1.8.2
    • @2024.08.26
    • studio3.0에서 object와 연결된 최적의 출도착지 노드를 찾지 못하는 이슈 수정
    • CR
  • 1.9.1, 1.9.2
    • @2024.09.12
    • 선호 이동수단 시나리오 추가: 선호 이동수단으로 이동할 수 있으면 그 이동수단으로 이동하고 없으면 가장 가까운 이동수단으로 이동
    • CR
  • 1.10.1
    • @2024.09.27
    • 가까운 거리의 길찾기시 기준이 되는 출도착지 노드가 같아 길찾기가 되지 않는 이슈 수정
    • 출도착지가 완전히 같은 위치에서의 길찾기시 길찾기를 진행하지 않도록 수정
    • CR
  • 1.10.2
    • @2024.10.02
    • 타층의 동일한 좌표로 모의주행시 시작노드와 종료노드가 같다고 나옴
    • CR
    • studio4 모의주행시 모의주행 방향이 올바르게 나오지 않음
    • CR
  • 1.11.1
    • @2024.10.14
    • 선호 이동수단간의 이동 가중치 로직에서 다른층과 연결된 path만 가중치 적용하도록 수정
    • 엘리베이터로 층 이동시 층간 가중치 추가
    • CR
  • 1.11.2, 1.11.3
    • @2024.10.15
    • 가장 가까운 연결링크가 connect나 entrance간의 연결링크면 길찾기가 안되는 이슈 수정
    • CR
  • 1.12.1
    • @2024.10.18
    • dikstra graph 생성할 때 graph에 포함할 연결링크의 유효성 체크 로직 수정
    • CR
  • 1.12.2, 1.12.3, 1.12.4
    • @2024.10.21
    • transcode simplify 하도록 로직 수정
    • CR
  • 1.12.5
    • @2024.10.23
    • buildGraph에서 floor offset 계산시 floorOrder 값 null 혹은 undefined 처리
    • CR

DijkstraRequest

  • 내비게이션 생성 객체
  • 생성자
let req = new navigation.NavigationRequest(mapInfo, ComputingType.RECOMMENDATION);
  • 인자 설명
    • mapInfo : 지도 조회 api 를 통해 얻은 정보 전체
    • computingType : RECOMMENDATION(추천경로), SAFETY (안전경로 - 엘리베이터만 이용한 경로)

DijkstraNavigationManager

  • 다익스트라 내비게이션 매니저 생성
let navi = new navigation.DijkstraNavigationManager(req);
  • 출발, 경유지, 목적지 생성
locations = {
        computingTypeList: ['RECOMMENDATION'],
        locations: [
            {
                poiId: 'PO-4JvSQCWHC2270', // 남자화장실 (11층)
                floorId: 'FL-t4vqgyek3jnb8146',
            },
            {
                poiId: 'PO-NMvw3E0pe1690', // 플랫폼사업부 회의실 (11층)
                floorId: 'FL-t4vqgyek3jnb8146',
            },
            {
                poiId: 'PO-WgCv1-qBo8094', // 사업전략부 (11층)
                floorId: 'FL-t4vqgyek3jnb8146',
            },
            {
                poiId: 'PO-M02DvTVjp8449', // 회의실1 (11층)
                floorId: 'FL-t4vqgyek3jnb8146',
            },
        ],
    },
    ```

-   내비게이션에 경로를 뽑을 목적지들을 전달하여 경로 추출

```javascript
let routes = [destination1, origin, destination, destination3, destination2];
let response = navi.getPath(routes);

응답 정의

  • locations : 예상 경로 위치 배열
    • position : 위치 좌표
    • floorId : 층 아이디
    • nodeId : 노드 아이디
    • poiId : Poi 아이디
    • objectId : Object 아이디
    • destination : 경유지 여부 (출발/도착 포함)
    • distance : 이전 노드부터 현재 노드까지 거리 (cm)
    • idx: 인덱스
    • transCode: 이동수단 코드 (실제로 타층과 연결된 경우에만 표시)
      • OB-ELEVATOR : 엘리베이터
      • OB-ESCALATOR : 에스컬레이터 양방향
      • OB-ELEVATOR_UP : 엘리베이터 상행
      • OB-ELEVATOR_DOWN : 엘리베이터 하행
      • OB-ESCALATOR_UP : 에스컬레이터 상행
      • OB-ESCALATOR_DOWN : 에스컬레이터 하행
      • OB-STAIRS : 계단
    • angle: 현재 노드에서 다음 노드까지의 각도
    • distance: 현재 노드에서 다음 노드까지의 거리
    • opening: 출도착지에서 사용하는 opening
    • direction : 현재 노드에서 다음 노드까지의 방향
      • LEFT : 좌회전
      • RIGHT : 우회전
      • STRAIGHT : 직진
  • pathInfo : 경로 안내 정보 (with simplify)
  • totalDistance : 예상 총 이동거리 (cm)
  • totalTime : 예상 이동 시간 (milliseconds)
  • origin : 출발지 위치 정보
  • finalDestination : 최종 목적지 위치 정보
  • wayPoints : 경유지들 위치 정보