KR20170049946A - 네비게이션서비스장치 및 그 동작 방법 - Google Patents

네비게이션서비스장치 및 그 동작 방법 Download PDF

Info

Publication number
KR20170049946A
KR20170049946A KR1020150150891A KR20150150891A KR20170049946A KR 20170049946 A KR20170049946 A KR 20170049946A KR 1020150150891 A KR1020150150891 A KR 1020150150891A KR 20150150891 A KR20150150891 A KR 20150150891A KR 20170049946 A KR20170049946 A KR 20170049946A
Authority
KR
South Korea
Prior art keywords
tile
tiles
representative
absolute coordinates
map data
Prior art date
Application number
KR1020150150891A
Other languages
English (en)
Other versions
KR102094202B1 (ko
Inventor
장민호
Original Assignee
에스케이플래닛 주식회사
에스케이텔레콤 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 에스케이플래닛 주식회사, 에스케이텔레콤 주식회사 filed Critical 에스케이플래닛 주식회사
Priority to KR1020150150891A priority Critical patent/KR102094202B1/ko
Publication of KR20170049946A publication Critical patent/KR20170049946A/ko
Application granted granted Critical
Publication of KR102094202B1 publication Critical patent/KR102094202B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/26Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/26Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
    • G01C21/28Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network with correlation of data from several navigational instruments
    • G01C21/30Map- or contour-matching
    • G01C21/32Structuring or formatting of map data

Landscapes

  • Engineering & Computer Science (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Automation & Control Theory (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Navigation (AREA)

Abstract

본 발명은 지도데이터 내 동일한 크기로 배열된 다수의 타일 각각의 구좌표계 상의 상대좌표를 단말에 표시하기 위한 평면좌표계 상의 절대좌표로 변환하는 데 있어서, 상대좌표로부터 절대좌표로 변환되는 타일의 개수를 최소화함으로써, 상대좌표를 절대좌표로 변환하는 데 필요한 로딩 속도를 향상시키는 네비게이션서비스장치 및 그 동작 방법을 제안한다.

Description

네비게이션서비스장치 및 그 동작 방법{NAVIGATION SERVICE APPARATUS AND CONTROL METHOD THEREOF}
본 발명은 지도데이터 내 동일한 크기로 배열된 다수의 타일 각각의 구좌표계 상의 상대좌표를 단말에 표시하기 위한 평면좌표계 상의 절대좌표로 변환하는 데 있어서, 상대좌표로부터 절대좌표로 변환되는 타일의 개수를 최소화하기 위한 방안에 관한 것이다.
최근 모바일 장치(이하, 단말장치)의 기능이 향상됨에 따라 차량용 네비게이션 전용장치를 별도로 구비하지 않고도 단말장치를 이용하여 네비게이션 서비스를 이용하는 사용자의 수가 급격히 증가하고 있다.
이러한 네비게이션 서비스는, 단말장치의 사용자가 애플리케이션을 통해 출발지와 목적지를 입력하게 되면, 네비게이션서비스장치에서는 단말장치의 이동경로를 확인하고, 이동경로와 관련된 경로안내정보를 생성하여 단말장치로 전달하는 방식으로 실행될 수 있다.
이처럼, 단말장치로 제공되는 경로안내정보에는 단말장치의 이동경로와 관련된 지도데이터가 포함되며, 이러한 지도데이터는 동일한 크기로 배열된 다수의 타일(Tile)로 구성될 수 있다.
각각의 타일은 지도데이터를 표시하기 위한 정방형의 표시단위로서, 지도데이터 상의 X축과 Y축으로 기준으로 동일한 크기로 배열될 수 있으며, 각 타일은 구좌표계의 상대좌표를 가지게 된다.
이처럼, 지도데이터를 구성하는 다수의 타일을 단말에 표시하기 위해선, 구좌표계 상의 상대좌표를 평면좌표계 상의 절대좌표로 변환하는 과정이 요구된다.
그러나, 상대좌표를 절대좌표로 변환하는 절차는, 지도데이터를 구성하는 각각의 타일마다 반복적으로 이루어져야 하며, 이처럼 각 타일마다 반복적으로 이루어져야 하는 변환 절차는 네비게이션 서비스에 있어서 로딩 속도를 지연시키는 등의 문제를 발생시킬 수 있다.
본 발명은 상기한 사정을 감안하여 창출된 것으로서, 본 발명에서 도달하고자 하는 목적은, 지도데이터 내 동일한 크기로 배열된 다수의 타일 각각의 구좌표계 상의 상대좌표를 단말에 표시하기 위한 평면좌표계 상의 절대좌표로 변환하는 데 있어서, 상대좌표로부터 절대좌표로 변환되는 타일의 개수를 최소화하는 데 있다.
상기 목적을 달성하기 위한 본 발명의 제 1 관점에 따른 네비게이션서비스장치는, 지도데이터 내 동일한 크기로 배열된 다수의 타일 중 단말장치의 현재위치와 관련된 대표 타일, 및 상기 대표 타일과 이웃한 배열순서로 배치된 이웃 타일을 선택하는 선택부; 상기 대표 타일 및 상기 이웃 타일 각각이 가지는 구좌표계 상의 상대좌표를 단말에 표시하기 위한 평면좌표계 상의 절대좌표로 변환하는 변환부; 상기 대표 타일과 상기 이웃 타일 간의 상기 절대좌표의 차이를 기초로 상기 평면좌표계 상에서 상기 대표 타일이 가지는 타일 길이로 확인하는 확인부; 및 상기 대표 타일로부터의 배열순서와 상기 타일 길이를 기초로, 상기 대표 타일과 상기 이웃 타일을 제외한 나머지 타일 각각의 상기 절대좌표로 결정하는 결정부를 포함하는 것을 특징으로 한다
보다 구체적으로, 상기 결정부는, 상기 대표 타일로부터의 배열순서만큼의 상기 타일 길이를, 상기 대표 타일로부터의 X축, 또는 Y축으로 배열 방향에 따라 상기 대표 타일의 절대좌표 값에 가산하거나, 또는 감산한 결과 값을 상기 나머지 타일 각각의 상기 절대좌표로 결정하는 것을 특징으로 한다.
보다 구체적으로, 상기 다수의 타일 각각은, 상기 지도데이터의 Z 축과 관련된 2 이상의 줌(Zoom) 레벨 각각과 관련하여, 상기 상대좌표가 상기 절대좌표로 변환되거나, 또는 상기 대표 타일로부터의 배열순서와 상기 타일 길이를 기초로 상기 절대좌표가 결정되는 것을 특징으로 한다.
보다 구체적으로, 상기 확인부는, 상기 타일 길이를 상기 다수의 타일 각각의 픽셀 수로 나눈 결과 값을 상기 다수의 타일 각각에 포함된 객체(Object)를 표시하기 위한 단위 길이로 확인하는 것을 특징으로 한다.
보다 구체적으로, 상기 결정부는, 상기 다수의 타일 각각의 절대좌표 값에 대해 상기 객체가 가지는 속성값만큼의 상기 단위 길이를 가산한 결과 값을, 상기 다수의 타일 각각에 포함된 객체가 가지는 상기 절대좌표로 결정하는 것을 특징으로 한다.
상기 목적을 달성하기 위한 본 발명의 제 2 관점에 따른 네비게이션서비스장치의 동작 방법은, 지도데이터 내 동일한 크기로 배열된 다수의 타일 중 단말장치의 현재위치와 관련된 대표 타일, 및 상기 대표 타일과 이웃한 배열순서로 배치된 이웃 타일을 선택하는 선택단계; 상기 대표 타일 및 상기 이웃 타일 각각이 가지는 구좌표계 상의 상대좌표를 단말에 표시하기 위한 평면좌표계 상의 절대좌표로 변환하는 변환단계; 상기 대표 타일과 상기 이웃 타일 간의 상기 절대좌표의 차이를 기초로 상기 평면좌표계 상에서 상기 대표 타일이 가지는 타일 길이로 확인하는 확인단계; 및 상기 대표 타일로부터의 배열순서와 상기 타일 길이를 기초로, 상기 대표 타일과 상기 이웃 타일을 제외한 나머지 타일 각각의 상기 절대좌표로 결정하는 결정단계를 포함하는 것을 특징으로 한다.
보다 구체적으로, 상기 결정단계는, 상기 대표 타일로부터의 배열순서만큼의 상기 타일 길이를, 상기 대표 타일로부터의 X축, 또는 Y축으로 배열 방향에 따라 상기 대표 타일의 절대좌표 값에 가산하거나, 또는 감산한 결과 값을 상기 나머지 타일 각각의 상기 절대좌표로 결정하는 것을 특징으로 한다.
보다 구체적으로, 상기 다수의 타일 각각은, 상기 지도데이터의 Z 축과 관련된 2 이상의 줌(Zoom) 레벨 각각과 관련하여, 상기 상대좌표가 상기 절대좌표로 변환되거나, 또는 상기 대표 타일로부터의 배열순서와 상기 타일 길이를 기초로 상기 절대좌표가 결정되는 것을 특징으로 한다.
보다 구체적으로, 상기 확인단계는, 상기 타일 길이를 상기 다수의 타일 각각의 픽셀 수로 나눈 결과 값을 상기 다수의 타일 각각에 포함된 객체(Object)를 표시하기 위한 단위 길이로 확인하는 것을 특징으로 한다.
보다 구체적으로, 상기 결정단계는, 상기 다수의 타일 각각의 절대좌표 값에 대해 상기 객체가 가지는 속성값만큼의 상기 단위 길이를 가산한 결과 값을, 상기 다수의 타일 각각에 포함된 객체의 상기 절대좌표로 결정하는 것을 특징으로 한다.
이에, 본 발명의 네비게이션서비스장치 및 그 동작 방법에 의하면, 지도데이터 내 동일한 크기로 배열된 다수의 타일 각각의 구좌표계 상의 상대좌표를 단말에 표시하기 위한 평면좌표계 상의 절대좌표로 변환하는 데 있어서, 상대좌표로부터 절대좌표로 변환되는 타일의 개수를 최소화함으로써, 상대좌표를 절대좌표로 변환하는 데 필요한 로딩 속도를 향상시키는 효과가 성취된다.
도 1은 본 발명의 일 실시예에 따른 네비게이션 서비스 시스템의 의 개략적인 구성도.
도 2는 본 발명의 일 실시예에 따른 단말장치의 개략적인 구성도.
도 3은 본 발명의 일 실시예에 따른 단말장치를 구현하기 위한 하드웨어 시스템의 개략적인 구성도.
도 4는 본 발명의 일 실시예에 따른 네비게이션서비스장치의 개략적인 구성도.
도 5는 본 발명의 일 실시예에 따른 지도데이터를 설명하기 위한 예시도.
도 6은 본 발명의 일 실시예에 따른 네비게이션서비스장치를 구현하기 위한 하드웨어 시스템의 개략적인 구성도.
도 7은 본 발명의 일 실시예에 따른 네비게이션서비스장치에서의 동작 흐름을 설명하기 위한 순서도.
도 8은 본 발명의 일 실시예에 따른 네비게이션서비스장치를 구현하기 위한 하드웨어 시스템에서의 동작 흐름을 설명하기 위한 순서도.
본 명세서에서 사용되는 기술적 용어는 단지 특정한 실시 예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아님을 유의해야 한다. 또한, 본 명세서에서 사용되는 기술적 용어는 본 명세서에서 특별히 다른 의미로 정의되지 않는 한, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 의미로 해석되어야 하며, 과도하게 포괄적인 의미로 해석되거나, 과도하게 축소된 의미로 해석되지 않아야 한다. 또한, 본 명세서에서 사용되는 기술적인 용어가 본 발명의 사상을 정확하게 표현하지 못하는 잘못된 기술적 용어일 때에는, 당업자가 올바르게 이해할 수 있는 기술적 용어로 대체되어 이해되어야 할 것이다. 또한, 본 발명에서 사용되는 일반적인 용어는 사전에 정의되어 있는 바에 따라, 또는 전후 문맥상에 따라 해석되어야 하며, 과도하게 축소된 의미로 해석되지 않아야 한다.
이하, 첨부된 도면을 참조하여 본 발명에 따른 바람직한 실시예를 상세히 설명하되, 도면 부호에 관계없이 동일하거나 유사한 구성 요소는 동일한 참조 번호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다. 또한, 본 발명을 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다. 또한, 첨부된 도면은 본 발명의 사상을 쉽게 이해할 수 있도록 하기 위한 것일 뿐, 첨부된 도면에 의해 본 발명의 사상이 제한되는 것으로 해석되어서는 아니됨을 유의해야 한다. 본 발명의 사상은 첨부된 도면 외에 모든 변경, 균등물 내지 대체물에 까지도 확장되는 것으로 해석되어야 한다.
이하, 첨부된 도면을 참조하여 본 발명의 일 실시예에 대하여 설명한다.
도 1은 본 발명의 일 실시예에 따른 네비게이션 서비스 시스템을 도시한 도면이다.
도 1에 도시된 바와 같이, 본 발명의 일 실시예에 따른 네비게이션 서비스 시스템에는, 네비게이션 서비스를 이용하는 단말장치(100), 및 단말장치(100)를 대상으로 네비게이션 서비스 제공하는 네비게이션서비스장치(200)를 포함하는 구성을 가질 수 있다.
단말장치(100)는, 네비게이션 서비스와 관련된 애플리케이션이 설치된 장치를 일컫는 것으로서, 예컨대, 애플리케이션의 실행 상태에서 출발지와 목적지를 입력하여 네비게이션서비스장치(200)로 경로 안내를 요청하고, 요청에 따라 네비게이션서비스장치(200)로부터 경로안내정보가 수신되는 경우, 이를 화면상에 표시하는 방식을 통해 네비게이션 서비스를 이용할 수 있다.
한편, 단말장치(100)는 네비게이션 서비스 이용 시, 현재 위치와 관련된 위치정보를 네비게이션서비스장치(200)로 전달하기 위해, 자신의 현재 위치를 확인하게 되는 데, 이러한 현재 위치 확인은, 예컨대, GPS(Global Positioning System) 등을 이용하여 이루어질 수 있다.
이러한, 단말장치(100)로는 예컨대, 스마트폰, 태블릿 PC, PDA, 및 노트북 등 사용자가 소지하고 있는 모바일 장치이거나 차량에 설치된 별도의 장치일 수 있으며, 이에 제한되는 것이 상기 네비게이션 서비스와 관련된 애플리케이션이 설치될 수 있는 장치는 모두 포함될 수 있을 것이다.
네비게이션서비스장치(200)는 단말장치(100)에 대해 경로 안내를 제공하는 서버를 일컫는 것으로서, 단말장치(100)로부터 입력된 출발지와 목적지를 이용하여 단말장치(100)의 이동경로를 확인하고, 확인된 이동경로와 관련된 경로안내정보를 생성하여 단말장치(100)에 제공하게 된다.
여기서, 경로안내정보는, 네비게이션 서비스를 이용하는 사용자 의도(예: 목적지 또는 출발지 설정)가 반영된 차량의 주행을 위해 제공되는 경로정보를 일컫는 것으로서, 단말장치(100)의 이동경로와 관련된 지도데이터가 포함될 수 있다.
이러한 지도데이터에는 이러한 지도데이터는 동일한 크기로 배열된 다수의 타일(Tile)로 구성될 수 있다.
각각의 타일은 지도데이터를 표시하기 위한 정방형의 표시단위로서, 지도데이터 상의 X축과 Y축으로 기준으로 동일한 크기로 배열될 수 있으며, 각 타일은 구좌표계를 따르는 상대좌표를 가지게 된다.
이처럼, 지도데이터를 구성하는 다수의 타일을 단말장치(100)에 표시하기 위해선, 구좌표계 상의 상대좌표를 평면좌표계 상의 절대좌표로 변환하는 과정이 요구된다.
그러나, 상대좌표를 절대좌표로 변환하는 절차는, 지도데이터를 구성하는 각각의 타일마다 반복적으로 이루어져야 하며, 이처럼 각 타일마다 반복적으로 이루어져야 하는 변환 절차는 네비게이션 서비스에 있어서 로딩 속도를 지연시키는 등의 문제를 발생시킬 수 있다.
결국, 이러한 문제점을 해결하기 위해선, 지도데이터를 구성하는 다수의 타일 중 상대좌표에서 절대좌표로 변환되는 타일을 개수를 최소할 수 있는 방안의 모색이 필요하다 할 것이다.
이에, 본 발명의 일 실시예에서는 지도데이터를 구성하는 다수의 타일 중 상대좌표에서 절대좌표로 변환되는 타일을 개수를 최소할 수 있는 방안을 제안하고자 하며, 이하에서는 이를 구현하기 위한 네비게이션서비스장치(200)의 구성에 대해 구체적으로 설명하기로 한다.
한편, 서비스장치(200)의 구체적인 설명에 앞서 설명의 이해를 돕기 위해 본 발명의 일 실시예에 따른 단말장치(100)의 구성에 대해 살펴보기로 한다.
우선, 도 2를 참조하여 본 발명의 일 실시예에 따른 단말장치(100)에 대해 설명하기로 한다.
여기서, 도 2는 본 발명의 일 실시예에 따른 단말장치(100)의 개략적인 구성을 도시한 도면이다.
도 2에 도시된 바와 같이, 본 발명의 일 실시예에 따른 단말장치(100)는 네비게이션서비스장치(200)에 대해 경로 안내를 요청하기 위한 요청부(110), 및 위 요청에 따라 네비게이션서비스장치(200)로부터 수신되는 지도데이터를 처리하기 위한 처리부(120)를 포함하는 구성을 가질 수 있다.
이상의 요청부(110), 및 처리부(120)를 포함하는 단말장치(100)의 구성 전체 내지는 적어도 일부는, 네비게이션 서비스와 관련된 애플리케이션에 의해 실행되는 소프트웨어 모듈, 또는 하드웨어 모듈 형태로 구현되거나, 내지는 소프트웨어 모듈 및 하드웨어 모듈이 조합된 형태로 구현될 수 있다.
결국, 본 발명의 일 실시예에 따른 단말장치(100)는 네비게이션서비스장치(200)로부터 이동경로와 관련된 지도데이터를 수신하여 표시할 수 있으며, 이하에서는 이를 구현하기 위한 단말장치(100) 내 각 구성에 대해 구체적으로 설명하기로 한다.
요청부(110)는 경로 안내를 요청하는 기능을 수행한다.
보다 구체적으로, 요청부(110)는 네비게이션 서비스의 실행에 따라 예컨대, 단말장치(100)의 현재 위치에 해당하는 출발지와, 그리고 사용자로부터 입력된 목적지를 네비게이션서비스장치(200)로 전달하여 경로 안내를 요청하게 된다.
이때, 요청부(110)는 출발지에 해당하는 단말장치(100)의 현재 위치를 확인하고, 확인된 현재 위치를 네비게이션서비스장치(200)로 전달하여 경로 안내를 요청할 수 있다.
한편, 경로 안내 요청에 따라 네비게이션서비스장치(200)로부터 수신되는 지도데이터의 경우, 단말장치(100)의 현재 위치와 관련된 것으로서, 이처럼 단말장치(100)의 현재 위치와 관련된 지도데이터를 수신하기 위해선, 단말장치(100)의 현재 위치를 실시간으로 확인하여 네비게이션서비스장치(200)로 전송하는 동작이 요구됨을 예상할 수 있다.
처리부(120)는 지도데이터를 처리하는 기능을 수행한다.
보다 구체적으로, 처리부(120)는 경로 안내 요청에 따라 네비게이션서비스장치(200)로부터 단말장치(100)의 현재 위치와 관련된 지도데이터가 수신되는 경우, 수신된 지도데이터를 화면에 표시하는 방식을 통해서 지도데이터를 처리하게 된다.
이때, 처리부(120)는 위 지도데이터에 포함된 각 타일의 절대좌표를 확인하고 확인된 절대좌표에 따라 각 타일에 포함된 객체(Object)를 표시하게 되는데, 이와 관련된 지도데이터의 구체적인 설명은 네비게이션서비스장치(200)의 설명에서 다루기로 한다.
한편, 이상 설명한 단말장치(100) 내 각 구성의 경우, 소프트웨어 모듈 또는 하드웨어 모듈 형태로 구현되거나, 내지는 소프트웨어 모듈과 하드웨어 모듈이 조합된 형태로도 구현될 수 있음을 언급한 바 있다.
이처럼, 프로세서에 의해 실행되는 소프트웨어 모듈, 하드웨어 모듈, 내지는 소프트웨어 모듈과 하드웨어 모듈이 조합된 형태는 하드웨어 시스템(예: 컴퓨터 시스템)으로 구현될 수 있을 것이다.
따라서, 이하에서는 도 3을 참조하여 본 발명의 일 실시예에 따른 단말장치(100)를 구현하기 위한 하드웨어 시스템(1000)에 대해서 설명하기로 한다.
참고로, 이하에서 서술된 내용은 하드웨어 시스템(1000) 내에서 앞서 설명한 단말장치(100) 내 각 구성을 구현하기 위한 일 예인 것으로, 각 구성과 그에 따른 동작이 실제 시스템과 상이할 수 있음은 염두 해 두어야 할 것이다.
도 3은 본 발명의 일 실시예에 따른 단말장치(100)를 구현하기 위한 하드웨어 시스템(1000)의 구조를 도시한 도면이다.
도 3에 도시된 바와 같이, 본 발명의 일 실시예에 따른 하드웨어 시스템(1000)은, 프로세서(1100), 메모리 인터페이스(1200), 및 주변장치 인터페이스(1300)를 포함하는 구성을 가질 수 있다.
이러한, 하드웨어 시스템(1000) 내 각 구성은, 개별 부품이거나 하나 이상의 집적 회로에 집적될 수 있으며, 이러한 각 구성들은 버스 시스템(도시안됨)에 결합될 수 있다.
여기서, 버스 시스템의 경우, 적절한 브리지들, 어댑터들, 및/또는 제어기들에 의해 연결된 임의의 하나 이상의 개별적인 물리 버스들, 통신 라인들/인터페이스들, 및/또는 멀티 드롭(multi-drop) 또는 포인트 투 포인트(point-to-point) 연결들을 나타내는 추상화(abstraction)이다.
프로세서(1100)는 하드웨어 시스템에서 다양한 기능들을 수행하기 위해 메모리 인터페이스(1200)를 통해 메모리(1210)와 통신함으로써, 메모리(1210)에 저장된 다양한 소프트웨어 모듈들을 실행하는 역할을 수행하게 된다.
여기서, 메모리(1210)에는 도 2를 참조하여 설명한 단말장치(100) 내 각 구성인 요청부(110), 및 처리부(120)가 소프트웨어 모듈 형태로 저장될 수 있으며, 그 외 운영 체계가 추가 저장될 수 있다.
위 운영 체계(예: I-OS, Android, Darwin, RTXC, LINUX, UNIX, OS X, WINDOWS, 또는 VxWorks와 같은 임베디드 운영 체계)의 경우, 일반적인 시스템 작업들(예를 들어, 메모리 관리, 저장 장치 제어, 전력 관리 등)을 제어 및 관리하는 다양한 절차, 명령어 세트, 소프트웨어 컴포넌트 및/또는 드라이버를 포함하고 있으며 다양한 하드웨어 모듈과 소프트웨어 모듈 간의 통신을 용이하게 하는 역할을 수행하게 된다.
참고로, 메모리(1210)는 캐쉬, 메인 메모리 및 보조 기억장치(secondary memory)를 포함하지만 이에 제한되지 않는 메모리 계층구조가 포함할 수 있는데, 위 메모리 계층구조의 경우 예컨대 RAM(예: SRAM, DRAM, DDRAM), ROM, FLASH, 자기 및/또는 광 저장 장치[예: 디스크 드라이브, 자기 테이프, CD(compact disk) 및 DVD(digital video disc) 등]의 임의의 조합을 통해서 구현될 수 있다.
주변장치 인터페이스(1300)는 프로세서(1100)와 주변장치 간에 사이에 통신을 가능하게 하는 역할을 수행한다.
위 주변장치의 경우, 컴퓨터 시스템에 상이한 기능을 제공하기 위한 것으로서, 본 발명의 일 실시예에서는, 예컨대, 위치확인장치(1310), 통신장치(1320), 및 입출력장치(1330)가 포함될 수 있다.
여기서, 위치확인장치(1310)는 예컨대, 단말장치(100)의 현재 위치를 확인할 수 있는 장치를 일컫는 것으로서, 예컨대, GPS(Global Positioning System)가 이에 해당될 수 있다.
그리고, 통신장치(1320)는 다른 장치와의 통신 기능을 제공하는 역할을 수행하는 수행하게 되며, 이를 위해 예컨대, 안테나 시스템, RF 송수신기, 하나 이상의 증폭기, 튜너, 하나 이상의 발진기, 디지털 신호 처리기, 코덱(CODEC) 칩셋, 및 메모리 등을 포함하지만 이에 제한되지는 않으며, 이 기능을 수행하는 공지의 회로를 포함할 수 있다.
이러한, 통신장치(1320)가 지원하는 통신 프로토콜로는, 예컨대, LTE(Long Term Evolution), TDMA(time division multiple access), CDMA(code division multiple access), GSM(global system for mobile communications), EDGE(Enhanced Data GSM Environment), W-CDMA(wideband code division multiple access), Wi-Fi(IEEE 802.11a, IEEE 802.11b, IEEE 802.11g 및/또는 IEEE 802.11n 등), 블루투스, Wi-MAX, VoIP(voice over Internet Protocol), 이메일, 인스턴트 메시징 및 SMS(short message service)를 위한 프로토콜 등이 해당될 수 있으며, 이에 제한되는 것이 아닌 다른 장치와의 통신 환경을 제공하는 프로토콜은 모두 포함될 수 있다.
또한, 입출력장치(1330)는 기타 하드웨어 시스템과 연동되는 I/O 장치를 제어하기 위한 컨트롤러 역할 수행하게 되는데, 본 발명의 일 실시예에서는 예컨대, 다양한 서비스 화면을 표시할 수 있는 디스플레이(1321)에 대한 제어를 담당할 수 있다.
결국, 메모리(1210)에 소프트웨어 모듈 형태로 저장되어 있는 단말장치(100) 내 각 구성은, 프로세서(1100)에 의해 실행되는 경우에 메모리 인터페이스(1100)와 주변장치 인터페이스(1300)를 매개로 위치확인장치(1310), 및 통신장치(1320)와의 통신을 수행함으로써, 이동경로와 관련하여 네비게이션서비스장치(200)로부터 지도데이터를 수신하여 표시할 수 있는 것이다.
이하에서는, 도 3을 참조하여 단말장치(100)와 관련된 하드웨어 시스템(1000) 내 각 구성에 대해 구체적으로 설명하기로 하며, 설명의 편의를 위해 메모리(1210)에 소프트웨어 모듈 형태로 저장되어 있는 단말장치(100) 내 각 구성은 프로세서(1100)에 의해 실행된 상태임을 전제하기로 한다.
요청부(110)는 경로 안내를 요청하는 기능을 수행한다.
보다 구체적으로, 요청부(110)는 네비게이션 서비스의 실행에 따라 예컨대, 단말장치(100)의 현재 위치에 해당하는 출발지와, 그리고 사용자로부터 입력된 목적지를 통신장치(1320)를 통해 네비게이션서비스장치(200)로 전달하여 경로 안내를 요청하게 된다.
이때, 요청부(110)는 출발지에 해당하는 위치확인장치(1310)로부터 수신되는 GPS 정보를 이용하여 단말장치(100)의 현재 위치를 확인하고, 확인된 현재 위치를 통신장치(1320)를 통해 네비게이션서비스장치(200)로 함께 전달하여 경로 안내를 요청할 수 있다.
한편, 경로 안내 요청에 따라 네비게이션서비스장치(200)로부터 수신되는 지도데이터의 경우, 단말장치(100)의 현재 위치와 관련된 것으로서, 이처럼 단말장치(100)의 현재 위치와 관련된 지도데이터를 수신하기 위해선, 단말장치(100)의 현재 위치를 실시간으로 확인하여 네비게이션서비스장치(200)로 전송하는 동작이 요구됨을 예상할 수 있다.
처리부(120)는 지도데이터를 처리하는 기능을 수행한다.
보다 구체적으로, 처리부(120)는 경로 안내 요청에 따라 네비게이션서비스장치(200)로부터 전송된 단말장치(100)의 현재 위치와 관련된 지도데이터가 통신장치(1320)를 통해 수신되는 경우, 입출력장치(1330)를 통해 디스플레이(1331)를 제어함으로써, 수신된 지도데이터를 디스플레이(1331)에 표시하는 방식을 통해서 지도데이터를 처리하게 된다.
이때, 처리부(120)는 이때, 처리부(120)는 위 지도데이터에 포함된 각 타일의 절대좌표를 확인하고 확인된 절대좌표에 따라 각 타일에 포함된 객체(Object)를 표시하게 되는데, 이와 관련된 지도데이터의 구체적인 설명은 네비게이션서비스장치(200)의 설명에서 다루기로 한다.
이상, 단말장치(100) 및 이를 구현하기 위한 하드웨어 시스템(1000)에 대한 설명을 마치고, 도 4를 참조하여 본 발명의 일 실시예에 따른 네비게이션서비스장치(200)의 구성에 대한 설명을 이어 가기로 한다.
도 4는 본 발명의 일 실시예에 따른 네비게이션서비스장치(200)의 개략적인 구성을 도시한 도면이다.
도 4에 도시된 바와 같이, 본 발명의 일 실시예에 따른 네비게이션서비스장치(200)는 단말장치(100)의 현재위치와 관련된 타일을 선택하는 선택부(210), 선택된 타일이 가지는 상대좌표를 절대좌표로 변환하는 변환부(220), 타일 길이를 확인하는 확인부(230), 및 나머지 타일의 절대좌표를 결정하는 결정부(240)를 포함하는 구성을 가질 수 있다.
또한, 본 발명의 일 실시예에 따른 네비게이션서비스장치(200)는 전술한 구성 이외에, 지도데이터를 단말장치(100)에 제공하는 제공부(250)를 더 포함하는 구성을 가질 수 있다.
이상의 선택부(210), 변환부(220), 확인부(230), 결정부(240), 및 제공부(250)를 포함하는 네비게이션서비스장치(200)의 구성 전체 내지는 적어도 일부는, 프로세서에 의해 실행되는 소프트웨어 모듈 형태 또는 하드웨어 모듈 형태로 구현되거나, 소프트웨어 모듈과 하드웨어 모듈이 조합된 형태로도 구현될 수 있다.
결국, 본 발명의 일 실시예에 따른 네비게이션서비스장치(200)는 위 구성들을 통해 지도데이터를 구성하는 다수의 타일 중 절대좌표로 변환되는 타일의 개수를 최소화하게 되는 데, 이하에서는 이를 위한 네비게이션서비스장치(200) 내 각 구성에 대해 구체적으로 설명하기로 한다.
선택부(210)는 타일을 선택하는 기능을 수행한다.
보다 구체적으로, 선택부(210)는 단말장치(100)의 이동경로와 관련된 지도데이터가 확인되는 경우, 지도데이터를 구성하는 다수의 타일 중 단말장치(100)의 현재위치와 관련된 대표 타일과, 대표 타일과 이웃한 배열순서로 배치된 이웃 타일을 선택하게 된다.
이와 관련하여, 도 5에는 지도데이터 상에서 선택되는 대표 타일과 이웃 타일에 대해 보여주고 있다.
도 5를 참조하면, 지도데이터 상의 다수의 타일 중 단말장치(100)의 현재위치와 관련된 특정 타일이 대표 타일(a)로 선택되는 경우, 대표 타일(a)과 X축 또는 Y축으로 이웃한 배열순서로 배치된 타일을 이웃 타일(b)로 선택할 수 있음을 확인할 수 있다.
여기서, 지도데이터를 구성하는 각각의 타일이 동일한 크기의 정사각형인 경우, 대표 파일(a)과 X축 또는 Y축으로 이웃한 배열순서로 배치된 한 개의 이웃 타일만을 선택하게 되며, 반면 각 타일이 동일한 크기의 직사각형인 경우, 대표 파일(a)과 X축과 Y축으로 이웃한 배열순서로 배치된 두 개의 대표타일을 선택해야만 한다.
이처럼, 대표 타일과, 이웃 타일을 선택하는 것은 지도데이터를 구성하는 각각의 타일이 평면좌표계 상에서 가지는 X축 또는 Y축으로의 타일 길이를 확인하기 위한 것이다.
이로써, 각 타일의 X축 또는 Y축으로의 타일 길이를 확인하기 위해 각각의 타일이 동일한 크기의 정사각형인 경우, 대표 파일(a)과 X축 또는 Y축으로 이웃한 배열순서로 배치된 한 개의 이웃 타일만을 선택할 수 있으며, 각 타일이 동일한 크기의 직사각형인 경우, 대표 파일(a)과 X축과 Y축으로 이웃한 배열순서로 배치된 두 개의 대표타일을 모두 선택해야만 함을 알 수 있다.
한편, 지도데이터의 경우, 도 5에 도시된 바와 같이 Z 축과 관련된 다수의 줌(Zoom) 레벨을 가지게 되는 데, 이에, 선택부(210)는 다수의 줌 레벨 각각에 대해 대표 타일과 이웃 타일을 선택하게 됨을 물론이다.
이와 관련하여, 이하에서 설명될 네비게이션서비스장치(200) 내 각 구성의 동작은 다수의 줌(Zoom) 레벨마다 독립적으로 이루어짐이 전제된다.
변환부(220)는 선택된 타일이 가지는 상대좌표를 절대좌표로 변환하는 기능을 수행한다.
보다 구체적으로, 변환부(220)는 지도데이터를 구성하는 다수의 타일 중 대표 타일과, 대표 타일과 이웃한 이웃 타일의 선택이 완료되면, 종래 기술과 마찬가지로 구좌표계를 따르고 있는 대표 타일과 이웃 타일의 상대좌표를 단말장치(100)에 표시하기 위한 평면좌표계 상의 절대좌표로 변환하게 된다.
여기서, 구좌표계를 평면좌표계로 변환하는 방식은, 당업자가 선택 적용할 수 있는 다양한 알고리즘을 통해서 이루어질 수 있다.
확인부(230)는 다수의 타일 각각이 가지는 타일 길이를 확인하는 기능을 수행한다.
보다 구체적으로, 확인부(230)는 대표 타일과 이웃 타일 각각에 대한 절대좌표로의 변환이 완료되면, 아래 [수식 1]과 같이 대표 타일과 이웃 타일 간의 절대좌표의 차이를 기초로 대표 타일이 가지는 타일 길이를 확인하게 된다.
[수식 1]
타일 길이 = 이웃 타일의 절대좌표 - 대표 타일의 절대좌표
한편, 지도데이터를 구성하는 각각의 타일에는 단말장치(100)에 표시하기 위한 객체(Object, 예: POI, 배경 등)가 포함될 수 있다.
이와 관련하여, 확인부(230)는 타일 길이에 대한 확인이 완료되면, 아래 [수식 2]에서와 같이 확인된 타일 길이를 다수의 타일 각각의 픽셀 수(예: 해상도)로 나눈 결과 값을 각 타일 각각에 포함된 객체(Object)를 표시하기 위한 단위 길이로 확인하게 된다.
[수식 2]
단위 길이(오브젝트 길이) = 타일 길이 / 픽셀 수(해상도)
이러한, 단위 길이는 위 [수식 2]에서도 알 수 있는 바와 같이, 단말장치(100)에서 지원하는 픽셀 수(해상도)에 따라 달라질 수 있음을 알 수 있다.
결정부(240)는 선택된 타일을 제외한 나머지 타일에 대한 절대좌표를 결정하는 기능을 수행한다.
보다 구체적으로, 결정부(240)는 대표 타일이 가지는 타일 길이가 확인되면, 대표 타일로부터의 배열순서와 확인된 타일 길이를 기초로 지도데이터를 구성하는 다수의 타일 중 대표 타일과 이웃 타일을 제외한 나머지 타일 각각에 대한 절대좌표를 결정하게 된다.
이때, 결정부(240)는 아래 [수식 3]에서와 같이 대표 타일로부터의 배열순서만큼의 타일 길이를, 대표 타일로부터의 X축, 또는 Y축으로 배열 방향에 따라 상기 대표 타일의 절대좌표 값에 가산하거나, 또는 감산한 결과 값을 나머지 타일 각각의 절대좌표로 결정하게 된다.
[수식 3]
나머지 타일의 절대좌표 = 대표 타일의 절대좌표 -(+) [대표 타일의 ID - 나머지 타일의 ID) * 타일 길이]
여기서, 타일의 ID는 지도 데이터 내 각 타일의 배열순서와 관련된 것으로 대표 타일 ID와 나머지 타일의 ID와의 차이는, 대표 타일로부터의 배열순서를 나타냄을 짐작할 수 있다.
한편, 지도데이터를 구성하는 각각의 타일에는 단말장치(100)에 표시하기 위한 객체(Object, 예: POI, 배경 등)가 포함될 수 있음을 언급한 바 있다.
이와 관련하여, 결정부(240)는 아래 [수식 4]에서와 같이, 다수의 타일 각각의 절대좌표 값에 대해 각 객체가 가지는 속성값(크기)만큼의 단위 길이를 가산한 결과 값을, 다수의 타일 각각에 포함된 객체가 가지는 절대좌표로 결정하게 된다.
[수식 4]
객체의 절대좌표 = 각 타일의 절대좌표 + (객체의 속성 값 * 단위 길이)
결국, 결정부(240)는 지도데이터를 구성하는 다수의 타일 중 대표 타일과 이웃 타일을 제외한 나머지 타일에 대해서는 기존과는 달리, 상대좌표를 절대좌표를 변환하는 것이 아닌, 확인된 타일 길이와 배열순서만을 이용하여 절대좌표를 결정할 수 있음에 따라 지도데이터를 구성하는 다수의 타일 중 상대좌표를 절대좌표로 변환하는 타일의 개수를 최소화할 수 있음을 알 수 있다.
제공부(240)는 지도데이터를 제공하는 기능을 수행한다.
보다 구체적으로, 제공부(240)는 지도데이터 내 각 타일마다 절대좌표가 부여되면, 해당 지도데이터를 단말장치(100)에 제공함으로써, 지도데이터를 수신한 단말장치(100)로 하여금 지도데이터에 포함된 각 타일의 절대좌표를 확인하고 확인된 절대좌표에 따라 각 타일에 포함된 객체(Object)를 표시할 수 있도록 한다.
한편, 이상 설명한 네비게이션서비스장치(200) 내 각 구성의 경우 프로세서에 의해 실행되는 소프트웨어 모듈 또는 하드웨어 모듈 형태로 구현되거나, 내지는 소프트웨어 모듈과 하드웨어 모듈이 조합된 형태로도 구현될 수 있음을 언급한 바 있다.
이처럼, 프로세서에 의해 실행되는 소프트웨어 모듈, 하드웨어 모듈, 내지는 소프트웨어 모듈과 하드웨어 모듈이 조합된 형태는 하드웨어 시스템(예: 컴퓨터 시스템)으로 구현될 수 있을 것이다.
따라서, 이하에서는 본 발명의 일 실시예에 따른 네비게이션서비스장치(200)를 구현하기 위한 하드웨어 시스템에 대해서 설명하기로 한다.  설명에 앞서, 이하에서 서술된 내용은 컴퓨터 시스템 내에서 앞서 설명한 네비게이션서비스장치(200) 내 각 구성을 구현하기 위한 일 예인 것으로, 각 구성과 그에 따른 동작이 실제 시스템과 상이할 수 있음은 물론이다.
도 6은 본 발명의 일 실시예에 따른 네비게이션서비스장치(200)를 구현하기 위한 하드웨어 시스템의 구조를 도시한 도면이다.
도 6에 도시된 바와 같이, 본 발명의 일 실시예에 따른 하드웨어 시스템(2000)은, 프로세서(2100), 메모리 인터페이스(2200), 및 주변장치 인터페이스(2300)를 포함하는 구성을 가질 수 있다.
이러한, 하드웨어 시스템(2000) 내 각 구성은, 개별 부품이거나 하나 이상의 집적 회로에 집적될 수 있으며, 이러한 각 구성들은 버스 시스템(도시안됨)에 결합될 수 있다.
여기서, 버스 시스템의 경우, 적절한 브리지들, 어댑터들, 및/또는 제어기들에 의해 연결된 임의의 하나 이상의 개별적인 물리 버스들, 통신 라인들/인터페이스들, 및/또는 멀티 드롭(multi-drop) 또는 포인트 투 포인트(point-to-point) 연결들을 나타내는 추상화(abstraction)이다.
프로세서(2100)는 하드웨어 시스템에서 다양한 기능들을 수행하기 위해 메모리 인터페이스(2200)를 통해 메모리(2210)와 통신함으로써, 메모리(2210)에 저장된 다양한 소프트웨어 모듈들을 실행하는 역할을 수행하게 된다.
여기서, 메모리(2210)에는 도 6을 참조하여 설명한 네비게이션서비스장치(200) 내 각 구성인 선택부(210), 변환부(220), 확인부(230), 결정부(240), 및 제공부(250)가 소프트웨어 모듈 형태로 저장될 수 있으며, 그 외 운영 체계가 추가 저장될 수 있다.
위 운영 체계(150, 예: I-OS, Android, Darwin, RTXC, LINUX, UNIX, OS X, WINDOWS, 또는 VxWorks와 같은 임베디드 운영 체계)의 경우, 일반적인 시스템 작업들(예를 들어, 메모리 관리, 저장 장치 제어, 전력 관리 등)을 제어 및 관리하는 다양한 절차, 명령어 세트, 소프트웨어 컴포넌트 및/또는 드라이버를 포함하고 있으며 다양한 하드웨어 모듈과 소프트웨어 모듈 간의 통신을 용이하게 하는 역할을 수행하게 된다.
참고로, 메모리(2210)는 캐쉬, 메인 메모리 및 보조 기억장치(secondary memory)를 포함하지만 이에 제한되지 않는 메모리 계층구조가 포함할 수 있는데, 위 메모리 계층구조의 경우 예컨대 RAM(예: SRAM, DRAM, DDRAM), ROM, FLASH, 자기 및/또는 광 저장 장치[예: 디스크 드라이브, 자기 테이프, CD(compact disk) 및 DVD(digital video disc) 등]의 임의의 조합을 통해서 구현될 수 있다.
주변장치 인터페이스(2300)는 프로세서(2100)와 주변장치 간에 사이에 통신을 가능하게 하는 역할을 수행한다.
위 주변장치의 경우, 컴퓨터 시스템에 상이한 기능을 제공하기 위한 것으로서, 본 발명의 일 실시예에서는 예컨대, 통신장치(2310)가 포함될 수 있다.
여기서, 통신장치(2310)는 다른 장치와의 통신 기능을 제공하는 역할을 수행하는 수행하게 되며, 이를 위해 예컨대, 안테나 시스템, RF 송수신기, 하나 이상의 증폭기, 튜너, 하나 이상의 발진기, 디지털 신호 처리기, 코덱(CODEC) 칩셋, 및 메모리 등을 포함하지만 이에 제한되지는 않으며, 이 기능을 수행하는 공지의 회로를 포함할 수 있다.
이러한, 통신장치(2310)가 지원하는 통신 프로토콜로는, 예컨대, LTE(Long Term Evolution), TDMA(time division multiple access), CDMA(code division multiple access), GSM(global system for mobile communications), EDGE(Enhanced Data GSM Environment), W-CDMA(wideband code division multiple access), Wi-Fi(IEEE 802.11a, IEEE 802.11b, IEEE 802.11g 및/또는 IEEE 802.11n 등), 블루투스, Wi-MAX, VoIP(voice over Internet Protocol), 이메일, 인스턴트 메시징 및 SMS(short message service)를 위한 프로토콜 등이 해당될 수 있으며, 이에 제한되는 것이 아닌 다른 장치와의 통신 환경을 제공하는 프로토콜은 모두 포함될 수 있다.
결국, 메모리(2210)에 소프트웨어 모듈 형태로 저장되어 있는 네비게이션서비스장치(200) 내 각 구성은, 프로세서(2100)에 의해 실행되는 경우에 메모리 인터페이스(2200)와 주변장치 인터페이스(2300)를 매개로 통신장치(2310)와의 통신을 수행함으로써, 지도데이터를 구성하는 다수의 타일 중 절대좌표로 변환되는 타일의 개수를 최소화할 수 있다.
이하에서는, 도 6을 참조하여 네비게이션서비스장치(200)와 관련된 하드웨어 시스템(2000) 내 각 구성에 대해 구체적으로 설명하기로 하며, 설명의 편의를 위해 메모리(2210)에 소프트웨어 모듈 형태로 저장되어 있는 네비게이션서비스장치(200) 내 각 구성은 메모리 인터페이스(2200)를 매개로 프로세서(2100)에 의해 실행된 상태임을 전제로 하기로 한다.
선택부(210)는 타일을 선택하는 기능을 수행한다.
보다 구체적으로, 선택부(210)는 통신장치(2310)를 통해 단말장치(100)로부터 경로안내가 요청되는 경우, 단말장치(100)의 이동경로와 관련된 지도데이터를 구성하는 다수의 타일 중 단말장치(100)의 현재위치와 관련된 대표 타일과, 대표 타일과 이웃한 배열순서로 배치된 이웃 타일을 선택하고, 선택 결과를 변환부(220)로 전달하게 된다.
이와 관련하여, 도 5를 참조하면, 지도데이터 상의 다수의 타일 중 단말장치(100)의 현재위치와 관련된 특정 타일이 대표 타일(a)로 선택되는 경우, 대표 타일(a)과 X축 또는 Y축으로 이웃한 배열순서로 배치된 타일을 이웃 타일(b)로 선택할 수 있음을 확인할 수 있다.
여기서, 지도데이터를 구성하는 각각의 타일이 동일한 크기의 정사각형인 경우, 대표 파일(a)과 X축 또는 Y축으로 이웃한 배열순서로 배치된 한 개의 이웃 타일만을 선택하게 되며, 반면 각 타일이 동일한 크기의 직사각형인 경우, 대표 파일(a)과 X축과 Y축으로 이웃한 배열순서로 배치된 두 개의 대표타일을 선택해야만 한다.
이처럼, 대표 타일과, 이웃 타일을 선택하는 것은 지도데이터를 구성하는 각각의 타일이 평면좌표계 상에서 가지는 X축 또는 Y축으로의 타일 길이를 확인하기 위한 것이다.
이로써, 각 타일의 X축 또는 Y축으로의 타일 길이를 확인하기 위해 각각의 타일이 동일한 크기의 정사각형인 경우, 대표 파일(a)과 X축 또는 Y축으로 이웃한 배열순서로 배치된 한 개의 이웃 타일만을 선택할 수 있으며, 각 타일이 동일한 크기의 직사각형인 경우, 대표 파일(a)과 X축과 Y축으로 이웃한 배열순서로 배치된 두 개의 대표타일을 모두 선택해야만 함을 알 수 있다.
한편, 지도데이터의 경우, 도 5에 도시된 바와 같이 Z 축과 관련된 다수의 줌(Zoom) 레벨을 가지게 되는 데, 이에, 선택부(210)는 다수의 줌 레벨 각각에 대해 대표 타일과 이웃 타일을 선택하게 됨을 물론이다.
이와 관련하여, 이하에서 설명될 네비게이션서비스장치(200) 내 각 구성의 동작은 다수의 줌(Zoom) 레벨마다 독립적으로 이루어짐이 전제된다.
변환부(220)는 선택된 타일이 가지는 상대좌표를 절대좌표로 변환하는 기능을 수행한다.
보다 구체적으로, 변환부(220)는 지도데이터를 구성하는 다수의 타일 중 대표 타일과, 대표 타일과 이웃한 이웃 타일의 선택 결과가 선택부(210)로부터 수신되면, 종래 기술과 마찬가지로 구좌표계를 따르고 있는 대표 타일과 이웃 타일의 상대좌표를 단말장치(100)에 표시하기 위한 평면좌표계 상의 절대좌표로 변환하고, 변환 결과를 확인부(230)로 전달하게 된다.
여기서, 구좌표계를 평면좌표계로 변환하는 방식은, 당업자가 선택 적용할 수 있는 다양한 알고리즘을 통해서 이루어질 수 있다.
확인부(230)는 다수의 타일 각각이 가지는 타일 길이를 확인하는 기능을 수행한다.
보다 구체적으로, 확인부(230)는 대표 타일과 이웃 타일 각각에 대한 절대좌표로의 변환 결과가 변환부(220)로부터 수신되면, 앞선 [수식 1]과 같이 대표 타일과 이웃 타일 간의 절대좌표의 차이를 기초로 대표 타일이 가지는 타일 길이를 확인하고, 확인 결과를 결정부(240)로 전달하게 된다.
한편, 지도데이터를 구성하는 각각의 타일에는 단말장치(100)에 표시하기 위한 객체(Object, 예: POI, 배경 등)가 포함될 수 있다.
이와 관련하여, 확인부(230)는 타일 길이에 대한 확인이 완료되면, 앞선 [수식 2]에서와 같이 확인된 타일 길이를 다수의 타일 각각의 픽셀 수(예: 해상도)로 나눈 결과 값을 각 타일 각각에 포함된 객체(Object)를 표시하기 위한 단위 길이로 확인하게 된다.
이러한, 단위 길이는 위 [수식 2]에서도 알 수 있는 바와 같이, 단말장치(100)에서 지원하는 픽셀 수(해상도)에 따라 달라질 수 있음을 알 수 있다.
결정부(240)는 선택된 타일을 제외한 나머지 타일에 대한 절대좌표를 결정하는 기능을 수행한다.
보다 구체적으로, 결정부(240)는 대표 타일이 가지는 타일 길이에 대한 확인 결과가 확인부(230)로부터 수신되면, 대표 타일로부터의 배열순서와 확인된 타일 길이를 기초로 지도데이터를 구성하는 다수의 타일 중 대표 타일과 이웃 타일을 제외한 나머지 타일 각각에 대한 절대좌표를 결정하고, 절대좌표가 부여된 지도데이터를 제공부(250)로 전달하게 된다.
이때, 결정부(240)는 앞선 [수식 3]에서와 같이 대표 타일로부터의 배열순서만큼의 타일 길이를, 대표 타일로부터의 X축, 또는 Y축으로 배열 방향에 따라 상기 대표 타일의 절대좌표 값에 가산하거나, 또는 감산한 결과 값을 나머지 타일 각각의 절대좌표로 결정하게 된다.
한편, 지도데이터를 구성하는 각각의 타일에는 단말장치(100)에 표시하기 위한 객체(Object, 예: POI, 배경 등)가 포함될 수 있음을 언급한 바 있다.
이와 관련하여, 결정부(240)는 앞선 [수식 4]에서와 같이, 다수의 타일 각각의 절대좌표 값에 대해 각 객체가 가지는 속성값(크기)만큼의 단위 길이를 가산한 결과 값을, 다수의 타일 각각에 포함된 객체가 가지는 절대좌표로 결정하게 된다.
결국, 결정부(240)는 지도데이터를 구성하는 다수의 타일 중 대표 타일과 이웃 타일을 제외한 나머지 타일에 대해서는 기존과는 달리, 상대좌표를 절대좌표를 변환하는 것이 아닌, 확인된 타일 길이와 배열순서만을 이용하여 절대좌표를 결정할 수 있음에 따라 지도데이터를 구성하는 다수의 타일 중 상대좌표를 절대좌표로 변환하는 타일의 개수를 최소화할 수 있음을 알 수 있다.
제공부(250)는 지도데이터를 제공하는 기능을 수행한다.
보다 구체적으로, 제공부(250)는 결정부(240)로부터 절대좌표가 부여된 지도데이터가 수신되면, 해당 지도데이터를 통신장치(2310)를 통해 단말장치(100)에 제공함으로써, 지도데이터를 수신한 단말장치(100)로 하여금 지도데이터에 포함된 각 타일의 절대좌표를 확인하고 확인된 절대좌표에 따라 각 타일에 포함된 객체(Object)를 표시할 수 있도록 한다.
이상에서 살펴본 바와 같이, 본 발명의 일 실시예에 따른 네비게이션서비스장치(200) 및 이를 구현하기 위한 하드웨어 시스템(2000)에 따르면, 지도데이터 내 동일한 크기로 배열된 다수의 타일 각각의 구좌표계 상의 상대좌표를 단말에 표시하기 위한 평면좌표계 상의 절대좌표로 변환하는 데 있어서, 상대좌표로부터 절대좌표로 변환되는 타일의 개수를 최소화함으로써, 상대좌표를 절대좌표로 변환하는 데 필요한 로딩 속도를 향상시키는 효과가 성취된다.
이하에서는, 도 7 및 도 8을 참조하여 본 발명의 일 실시예에 따른 네비게이션서비스장치(200) 및 이를 구현하기 위한 하드웨어 시스템(2000)에서의 동작 흐름을 설명하기로 한다. 설명의 편의를 위해 전술한 도 1 내지 도 6에 도시된 구성은 해당 참조번호를 언급하여 설명하겠다.
우선, 도 7을 참조하여 본 발명의 일 실시예에 따른 네비게이션서비스장치(200)에서의 동작 흐름을 살펴보면 다음과 같다.
먼저, 선택부(210)는 단말장치(100)의 이동경로와 관련된 지도데이터가 확인되는 경우, 지도데이터를 구성하는 다수의 타일 중 단말장치(100)의 현재위치와 관련된 대표 타일과, 대표 타일과 이웃한 배열순서로 배치된 이웃 타일을 선택한다(S110-S120).
도 5를 참조하면, 지도데이터 상의 다수의 타일 중 단말장치(100)의 현재위치와 관련된 특정 타일이 대표 타일(a)로 선택되는 경우, 대표 타일(a)과 X축 또는 Y축으로 이웃한 배열순서로 배치된 타일을 이웃 타일(b)로 선택할 수 있음을 확인할 수 있다.
여기서, 지도데이터를 구성하는 각각의 타일이 동일한 크기의 정사각형인 경우, 대표 파일(a)과 X축 또는 Y축으로 이웃한 배열순서로 배치된 한 개의 이웃 타일만을 선택하게 되며, 반면 각 타일이 동일한 크기의 직사각형인 경우, 대표 파일(a)과 X축과 Y축으로 이웃한 배열순서로 배치된 두 개의 대표타일을 선택해야만 한다.
이처럼, 대표 타일과, 이웃 타일을 선택하는 것은 지도데이터를 구성하는 각각의 타일이 평면좌표계 상에서 가지는 X축 또는 Y축으로의 타일 길이를 확인하기 위한 것이다.
이로써, 각 타일의 X축 또는 Y축으로의 타일 길이를 확인하기 위해 각각의 타일이 동일한 크기의 정사각형인 경우, 대표 파일(a)과 X축 또는 Y축으로 이웃한 배열순서로 배치된 한 개의 이웃 타일만을 선택할 수 있으며, 각 타일이 동일한 크기의 직사각형인 경우, 대표 파일(a)과 X축과 Y축으로 이웃한 배열순서로 배치된 두 개의 대표타일을 모두 선택해야만 함을 알 수 있다.
한편, 지도데이터의 경우, 도 5에 도시된 바와 같이 Z 축과 관련된 다수의 줌(Zoom) 레벨을 가지게 되는 데, 이에, 선택부(210)는 다수의 줌 레벨 각각에 대해 대표 타일과 이웃 타일을 선택하게 됨을 물론이다.
이와 관련하여, 이하에서 설명될 네비게이션서비스장치(200) 내 각 구성의 동작은 다수의 줌(Zoom) 레벨마다 독립적으로 이루어짐이 전제된다.
이어서, 변환부(220)는 지도데이터를 구성하는 다수의 타일 중 대표 타일과, 대표 타일과 이웃한 이웃 타일의 선택이 완료되면, 종래 기술과 마찬가지로 구좌표계를 따르고 있는 대표 타일과 이웃 타일의 상대좌표를 단말장치(100)에 표시하기 위한 평면좌표계 상의 절대좌표로 변환한다(S130).
여기서, 구좌표계를 평면좌표계로 변환하는 방식은, 당업자가 선택 적용할 수 있는 다양한 알고리즘을 통해서 이루어질 수 있다.
그런 다음, 확인부(230)는 대표 타일과 이웃 타일 각각에 대한 절대좌표로의 변환이 완료되면, 앞선 [수식 1]과 같이 대표 타일과 이웃 타일 간의 절대좌표의 차이를 기초로 대표 타일이 가지는 타일 길이를 확인한다(S140).
한편, 지도데이터를 구성하는 각각의 타일에는 단말장치(100)에 표시하기 위한 객체(Object, 예: POI, 배경 등)가 포함될 수 있다.
이와 관련하여, 확인부(230)는 타일 길이에 대한 확인이 완료되면, 앞선 [수식 2]에서와 같이 확인된 타일 길이를 다수의 타일 각각의 픽셀 수(예: 해상도)로 나눈 결과 값을 각 타일 각각에 포함된 객체(Object)를 표시하기 위한 단위 길이로 확인할 수 있다.
이러한, 단위 길이는 위 [수식 2]에서도 알 수 있는 바와 같이, 단말장치(100)에서 지원하는 픽셀 수(해상도)에 따라 달라질 수 있음을 알 수 있다.
나아가, 결정부(240)는 대표 타일이 가지는 타일 길이가 확인되면, 대표 타일로부터의 배열순서와 확인된 타일 길이를 기초로 지도데이터를 구성하는 다수의 타일 중 대표 타일과 이웃 타일을 제외한 나머지 타일 각각에 대한 절대좌표를 결정한다(S150).
이때, 결정부(240)는 앞선 [수식 3]에서와 같이 대표 타일로부터의 배열순서만큼의 타일 길이를, 대표 타일로부터의 X축, 또는 Y축으로 배열 방향에 따라 상기 대표 타일의 절대좌표 값에 가산하거나, 또는 감산한 결과 값을 나머지 타일 각각의 절대좌표로 결정하게 된다.
한편, 지도데이터를 구성하는 각각의 타일에는 단말장치(100)에 표시하기 위한 객체(Object, 예: POI, 배경 등)가 포함될 수 있음을 언급한 바 있다.
이와 관련하여, 결정부(240)는 앞선 [수식 4]에서와 같이, 다수의 타일 각각의 절대좌표 값에 대해 각 객체가 가지는 속성값(크기)만큼의 단위 길이를 가산한 결과 값을, 다수의 타일 각각에 포함된 객체가 가지는 절대좌표로 결정할 수 있다.
결국, 결정부(240)는 지도데이터를 구성하는 다수의 타일 중 대표 타일과 이웃 타일을 제외한 나머지 타일에 대해서는 기존과는 달리, 상대좌표를 절대좌표를 변환하는 것이 아닌, 확인된 타일 길이와 배열순서만을 이용하여 절대좌표를 결정할 수 있음에 따라 지도데이터를 구성하는 다수의 타일 중 상대좌표를 절대좌표로 변환하는 타일의 개수를 최소화할 수 있음을 알 수 있다.
이후, 제공부(240)는 지도데이터 내 각 타일마다 절대좌표가 부여되면, 해당 지도데이터를 단말장치(100)에 제공함으로써, 지도데이터를 수신한 단말장치(100)로 하여금 지도데이터에 포함된 각 타일의 절대좌표를 확인하고 확인된 절대좌표에 따라 각 타일에 포함된 객체(Object)를 표시할 수 있도록 한다(S160).
이하에서는, 도 8을 참조하여 본 발명의 일 실시예에 따른 네비게이션서비스장치(200)를 구현하기 위한 하드웨어 시스템(2000) 내 각 구성의 동작 흐름에 대해 구체적으로 설명하기로 한다.
설명의 편의를 위해 메모리(2210)에 소프트웨어 모듈 형태로 저장되어 있는 네비게이션서비스장치(200) 내 각 구성은 프로세서(2100)에 의해 실행된 상태임을 전제하기로 한다.
먼저, 선택부(210)는 통신장치(2310)를 통해 단말장치(100)로부터 경로안내가 요청되는 경우, 단말장치(100)의 이동경로와 관련된 지도데이터를 구성하는 다수의 타일 중 단말장치(100)의 현재위치와 관련된 대표 타일과, 대표 타일과 이웃한 배열순서로 배치된 이웃 타일을 선택하고, 선택 결과를 변환부(220)로 전달한다(S1100-S1300).
이와 관련하여, 도 5를 참조하면, 지도데이터 상의 다수의 타일 중 단말장치(100)의 현재위치와 관련된 특정 타일이 대표 타일(a)로 선택되는 경우, 대표 타일(a)과 X축 또는 Y축으로 이웃한 배열순서로 배치된 타일을 이웃 타일(b)로 선택할 수 있음을 확인할 수 있다.
여기서, 지도데이터를 구성하는 각각의 타일이 동일한 크기의 정사각형인 경우, 대표 파일(a)과 X축 또는 Y축으로 이웃한 배열순서로 배치된 한 개의 이웃 타일만을 선택하게 되며, 반면 각 타일이 동일한 크기의 직사각형인 경우, 대표 파일(a)과 X축과 Y축으로 이웃한 배열순서로 배치된 두 개의 대표타일을 선택해야만 한다.
이처럼, 대표 타일과, 이웃 타일을 선택하는 것은 지도데이터를 구성하는 각각의 타일이 평면좌표계 상에서 가지는 X축 또는 Y축으로의 타일 길이를 확인하기 위한 것이다.
이로써, 각 타일의 X축 또는 Y축으로의 타일 길이를 확인하기 위해 각각의 타일이 동일한 크기의 정사각형인 경우, 대표 파일(a)과 X축 또는 Y축으로 이웃한 배열순서로 배치된 한 개의 이웃 타일만을 선택할 수 있으며, 각 타일이 동일한 크기의 직사각형인 경우, 대표 파일(a)과 X축과 Y축으로 이웃한 배열순서로 배치된 두 개의 대표타일을 모두 선택해야만 함을 알 수 있다.
한편, 지도데이터의 경우, 도 5에 도시된 바와 같이 Z 축과 관련된 다수의 줌(Zoom) 레벨을 가지게 되는 데, 이에, 선택부(210)는 다수의 줌 레벨 각각에 대해 대표 타일과 이웃 타일을 선택하게 됨을 물론이다.
이와 관련하여, 이하에서 설명될 네비게이션서비스장치(200) 내 각 구성의 동작은 다수의 줌(Zoom) 레벨마다 독립적으로 이루어짐이 전제된다.
그리고 나서, 변환부(220)는 지도데이터를 구성하는 다수의 타일 중 대표 타일과, 대표 타일과 이웃한 이웃 타일의 선택 결과가 선택부(210)로부터 수신되면, 종래 기술과 마찬가지로 구좌표계를 따르고 있는 대표 타일과 이웃 타일의 상대좌표를 단말장치(100)에 표시하기 위한 평면좌표계 상의 절대좌표로 변환하고, 변환 결과를 확인부(230)로 전달한다(S1400-S1500).
여기서, 구좌표계를 평면좌표계로 변환하는 방식은, 당업자가 선택 적용할 수 있는 다양한 알고리즘을 통해서 이루어질 수 있다.
이어서, 확인부(230)는 대표 타일과 이웃 타일 각각에 대한 절대좌표로의 변환 결과가 변환부(220)로부터 수신되면, 앞선 [수식 1]과 같이 대표 타일과 이웃 타일 간의 절대좌표의 차이를 기초로 대표 타일이 가지는 타일 길이를 확인하고, 확인 결과를 결정부(240)로 전달한다(S1600-S1700).
한편, 지도데이터를 구성하는 각각의 타일에는 단말장치(100)에 표시하기 위한 객체(Object, 예: POI, 배경 등)가 포함될 수 있다.
이와 관련하여, 확인부(230)는 타일 길이에 대한 확인이 완료되면, 앞선 [수식 2]에서와 같이 확인된 타일 길이를 다수의 타일 각각의 픽셀 수(예: 해상도)로 나눈 결과 값을 각 타일 각각에 포함된 객체(Object)를 표시하기 위한 단위 길이로 확인할 수 있다.
이러한, 단위 길이는 위 [수식 2]에서도 알 수 있는 바와 같이, 단말장치(100)에서 지원하는 픽셀 수(해상도)에 따라 달라질 수 있음을 알 수 있다.
나아가, 결정부(240)는 대표 타일이 가지는 타일 길이에 대한 확인 결과가 확인부(230)로부터 수신되면, 대표 타일로부터의 배열순서와 확인된 타일 길이를 기초로 지도데이터를 구성하는 다수의 타일 중 대표 타일과 이웃 타일을 제외한 나머지 타일 각각에 대한 절대좌표를 결정하고, 절대좌표가 부여된 지도데이터를 제공부(250)로 전달한다(S1800-S1900).
이때, 결정부(240)는 앞선 [수식 3]에서와 같이 대표 타일로부터의 배열순서만큼의 타일 길이를, 대표 타일로부터의 X축, 또는 Y축으로 배열 방향에 따라 상기 대표 타일의 절대좌표 값에 가산하거나, 또는 감산한 결과 값을 나머지 타일 각각의 절대좌표로 결정하게 된다.
한편, 지도데이터를 구성하는 각각의 타일에는 단말장치(100)에 표시하기 위한 객체(Object, 예: POI, 배경 등)가 포함될 수 있음을 언급한 바 있다.
이와 관련하여, 결정부(240)는 앞선 [수식 4]에서와 같이, 다수의 타일 각각의 절대좌표 값에 대해 각 객체가 가지는 속성값(크기)만큼의 단위 길이를 가산한 결과 값을, 다수의 타일 각각에 포함된 객체가 가지는 절대좌표로 결정하게 된다.
결국, 결정부(240)는 지도데이터를 구성하는 다수의 타일 중 대표 타일과 이웃 타일을 제외한 나머지 타일에 대해서는 기존과는 달리, 상대좌표를 절대좌표를 변환하는 것이 아닌, 확인된 타일 길이와 배열순서만을 이용하여 절대좌표를 결정할 수 있음에 따라 지도데이터를 구성하는 다수의 타일 중 상대좌표를 절대좌표로 변환하는 타일의 개수를 최소화할 수 있음을 알 수 있다.
이후, 제공부(250)는 결정부(240)로부터 절대좌표가 부여된 지도데이터가 수신되면, 해당 지도데이터를 통신장치(2310)를 통해 단말장치(100)에 제공함으로써, 지도데이터를 수신한 단말장치(100)로 하여금 지도데이터에 포함된 각 타일의 절대좌표를 확인하고 확인된 절대좌표에 따라 각 타일에 포함된 객체(Object)를 표시할 수 있도록 한다(S2000).
이상에서 살펴본 바와 같이, 본 발명의 일 실시예에 따른 네비게이션서비스장치(200) 및 이를 구현하기 위한 하드웨어 시스템(2000)에서의 동작 흐름에 따르면, 지도데이터 내 동일한 크기로 배열된 다수의 타일 각각의 구좌표계 상의 상대좌표를 단말에 표시하기 위한 평면좌표계 상의 절대좌표로 변환하는 데 있어서, 상대좌표로부터 절대좌표로 변환되는 타일의 개수를 최소화함으로써, 상대좌표를 절대좌표로 변환하는 데 필요한 로딩 속도를 향상시키는 효과가 성취된다.
이상, 본 발명이 속하는 기술분야의 당업자는 본 발명이 그 기술적 사상이나 필수적 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적인 것이 아닌 것으로서 이해해야만 한다.
예컨대, 본 발명에 따른 단말장치(100), 및 네비게이션서비스장치(200)는 메모리에 의하여 정보를 저장할 수 있는데, 일 구현예의 경우 메모리는 컴퓨터로 판독 가능한 매체이다. 일 구현예에서 메모리는 휘발성 메모리 유닛일 수 있으며, 다른 구현예의 경우 메모리는 비휘발성 메모리 유닛일 수 있다. 또한, 메모리는 예컨대 하드디스크 장치, 광학디스크 장치, 혹은 어떤 다른 대용량 저장 장치를 포함할 수도 있다.
단말장치(100), 및 네비게이션서비스장치(200)는 또한 예컨대 이더넷 카드와 같은 하나 이상의 네트워크 인터페이스 장치, 예컨대 RS-232 포트와 같은 직렬 통신 장치 및/또는 예컨대 802.11 카드와 같은 무선 인터페이스 장치를 외부 입출력 장치로서 포함할 수 있다. 다른 구현예에서, 이러한 입출력 장치는 다른 입출력 장치로 출력 데이터를 전송하고 입력 데이터를 수신하도록 구성된 드라이버 장치, 예컨대 키보드, 프린터 및 디스플레이 장치 등을 포함할 수 있다.
단말장치(100), 및 네비게이션서비스장치(200)는 실행 시 하나 이상의 처리 장치로 하여금 전술한 기능과 프로세스를 수행하도록 하는 명령에 의하여 실현될 수 있다. 예를 들어 그러한 명령으로는, 예컨대 JavaScript나 ECMAScript 명령 등의 스크립트 명령과 같은 해석되는 명령이나 실행 가능한 코드 혹은 컴퓨터로 판독 가능한 매체에 저장되는 기타의 명령이 포함될 수 있다.
본 명세서에 따른 단말장치(100), 및 네비게이션서비스장치(200)는 서버 팜(Server Farm)과 같이 네트워크에 걸쳐서 분산형으로 구현될 수 있으며, 혹은 단일의 컴퓨터 장치로 구현될 수 있다.
본 명세서에서 설명하는 기능적인 동작과 주제의 구현물들은 디지털 전자 회로로 구현되거나, 본 명세서에서 개시하는 구조 및 그 구조적인 등가물들을 포함하는 컴퓨터 소프트웨어, 펌웨어 혹은 하드웨어로 구현되거나, 이들 중 하나 이상의 결합으로 구현 가능하다. 본 명세서에서 설명하는 주제의 구현물들은 하나 이상의 컴퓨터 프로그램 제품, 다시 말해 처리 시스템의 동작을 제어하기 위하여 혹은 이것에 의한 실행을 위하여 유형의 프로그램 저장매체 상에 인코딩된 컴퓨터 프로그램 명령에 관한 하나 이상의 모듈로서 구현될 수 있다.
컴퓨터로 판독 가능한 매체는 기계로 판독 가능한 저장 장치, 기계로 판독 가능한 저장 기판, 메모리 장치, 기계로 판독 가능한 전파형 신호에 영향을 미치는 물질의 조성물 혹은 이들 중 하나 이상의 조합일 수 있다.
본 명세서에서 '시스템'이나 '장치'라 함은 예컨대 프로그래머블 프로세서, 컴퓨터 혹은 다중 프로세서나 컴퓨터를 포함하여 데이터를 처리하기 위한 모든 기구, 장치 및 기계를 포괄한다. 처리 시스템은, 하드웨어에 부가하여, 예컨대 프로세서 펌웨어를 구성하는 코드, 프로토콜 스택, 데이터베이스 관리 시스템, 운영 체제 혹은 이들 중 하나 이상의 조합 등 요청 시 컴퓨터 프로그램에 대한 실행 환경을 형성하는 코드를 포함할 수 있다.
컴퓨터 프로그램(프로그램, 소프트웨어, 소프트웨어 어플리케이션, 스크립트 혹은 코드로도 알려져 있음)은 컴파일되거나 해석된 언어나 선험적 혹은 절차적 언어를 포함하는 프로그래밍 언어의 어떠한 형태로도 작성될 수 있으며, 독립형 프로그램이나 모듈, 컴포넌트, 서브루틴 혹은 컴퓨터 환경에서 사용하기에 적합한 다른 유닛을 포함하여 어떠한 형태로도 전개될 수 있다. 컴퓨터 프로그램은 파일 시스템의 파일에 반드시 대응하는 것은 아니다. 프로그램은 요청된 프로그램에 제공되는 단일 파일 내에, 혹은 다중의 상호 작용하는 파일(예컨대, 하나 이상의 모듈, 하위 프로그램 혹은 코드의 일부를 저장하는 파일) 내에, 혹은 다른 프로그램이나 데이터를 보유하는 파일의 일부(예컨대, 마크업 언어 문서 내에 저장되는 하나 이상의 스크립트) 내에 저장될 수 있다. 컴퓨터 프로그램은 하나의 사이트에 위치하거나 복수의 사이트에 걸쳐서 분산되어 통신 네트워크에 의해 상호 접속된 다중 컴퓨터나 하나의 컴퓨터 상에서 실행되도록 전개될 수 있다.
한편, 컴퓨터 프로그램 명령어와 데이터를 저장하기에 적합한 컴퓨터로 판독 가능한 매체는, 예컨대 EPROM, EEPROM 및 플래시메모리 장치와 같은 반도체 메모리 장치, 예컨대 내부 하드디스크나 외장형 디스크와 같은 자기 디스크, 자기광학 디스크 및 CD-ROM과 DVD-ROM 디스크를 포함하여 모든 형태의 비휘발성 메모리, 매체 및 메모리 장치를 포함할 수 있다. 프로세서와 메모리는 특수 목적의 논리 회로에 의해 보충되거나, 그것에 통합될 수 있다.
본 명세서에서 설명한 주제의 구현물은 예컨대 데이터 서버와 같은 백엔드 컴포넌트를 포함하거나, 예컨대 어플리케이션 서버와 같은 미들웨어 컴포넌트를 포함하거나, 예컨대 사용자가 본 명세서에서 설명한 주제의 구현물과 상호 작용할 수 있는 웹 브라우저나 그래픽 유저 인터페이스를 갖는 클라이언트 컴퓨터와 같은 프론트엔드 컴포넌트 혹은 그러한 백엔드, 미들웨어 혹은 프론트엔드 컴포넌트의 하나 이상의 모든 조합을 포함하는 연산 시스템에서 구현될 수도 있다. 시스템의 컴포넌트는 예컨대 통신 네트워크와 같은 디지털 데이터 통신의 어떠한 형태나 매체에 의해서도 상호 접속 가능하다.
본 명세서는 다수의 특정한 구현물의 세부사항들을 포함하지만, 이들은 어떠한 발명이나 청구 가능한 것의 범위에 대해서도 제한적인 것으로서 이해되어서는 안되며, 오히려 특정한 발명의 특정한 실시형태에 특유할 수 있는 특징들에 대한 설명으로서 이해되어야 한다. 마찬가지로, 개별적인 실시형태의 문맥에서 본 명세서에 기술된 특정한 특징들은 단일 실시형태에서 조합하여 구현될 수도 있다. 반대로, 단일 실시형태의 문맥에서 기술한 다양한 특징들 역시 개별적으로 혹은 어떠한 적절한 하위 조합으로도 복수의 실시형태에서 구현 가능하다. 나아가, 특징들이 특정한 조합으로 동작하고 초기에 그와 같이 청구된 바와 같이 묘사될 수 있지만, 청구된 조합으로부터의 하나 이상의 특징들은 일부 경우에 그 조합으로부터 배제될 수 있으며, 그 청구된 조합은 하위 조합이나 하위 조합의 변형물로 변경될 수 있다.
또한, 본 명세서에서는 특정한 순서로 도면에서 동작들을 묘사하고 있지만, 이는 바람직한 결과를 얻기 위하여 도시된 그 특정한 순서나 순차적인 순서대로 그러한 동작들을 수행하여야 한다거나 모든 도시된 동작들이 수행되어야 하는 것으로 이해되어서는 안 된다. 특정한 경우, 멀티태스킹과 병렬 프로세싱이 유리할 수 있다. 또한, 상술한 실시형태의 다양한 시스템 컴포넌트의 분리는 그러한 분리를 모든 실시형태에서 요구하는 것으로 이해되어서는 안되며, 설명한 프로그램 컴포넌트와 시스템들은 일반적으로 단일의 소프트웨어 제품으로 함께 통합되거나 다중 소프트웨어 제품에 패키징될 수 있다는 점을 이해하여야 한다
이와 같이, 본 명세서는 그 제시된 구체적인 용어에 본 발명을 제한하려는 의도가 아니다. 따라서, 상술한 예를 참조하여 본 발명을 상세하게 설명하였지만, 당업자라면 본 발명의 범위를 벗어나지 않으면서도 본 예들에 대한 개조, 변경 및 변형을 가할 수 있다. 본 발명의 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 등가개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.
본 발명의 네비게이션서비스장치 및 그 동작 방법에 따르면, 지도데이터 내 동일한 크기로 배열된 다수의 타일 각각의 구좌표계 상의 상대좌표를 단말에 표시하기 위한 평면좌표계 상의 절대좌표로 변환하는 데 있어서, 상대좌표로부터 절대좌표로 변환되는 타일의 개수를 최소화할 수 있다는 점에서, 기존 기술의 한계를 뛰어 넘음에 따라 관련 기술에 대한 이용만이 아닌 적용되는 장치의 시판 또는 영업의 가능성이 충분할 뿐만 아니라 현실적으로 명백하게 실시할 수 있는 정도이므로 산업상 이용가능성이 있는 발명이다.
100: 단말장치
110: 요청부    120: 처리부
200: 네비게이션서비스장치
210: 선택부 220: 변환부
230: 확인부 240: 결정부
250: 제공부

Claims (11)

  1. 지도데이터 내 동일한 크기로 배열된 다수의 타일 중 단말장치의 현재위치와 관련된 대표 타일, 및 상기 대표 타일과 이웃한 배열순서로 배치된 이웃 타일을 선택하는 선택부;
    상기 대표 타일 및 상기 이웃 타일 각각이 가지는 구좌표계 상의 상대좌표를 단말에 표시하기 위한 평면좌표계 상의 절대좌표로 변환하는 변환부;
    상기 대표 타일과 상기 이웃 타일 간의 상기 절대좌표의 차이를 기초로 상기 평면좌표계 상에서 상기 대표 타일이 가지는 타일 길이로 확인하는 확인부; 및
    상기 대표 타일로부터의 배열순서와 상기 타일 길이를 기초로, 상기 대표 타일과 상기 이웃 타일을 제외한 나머지 타일 각각의 상기 절대좌표로 결정하는 결정부를 포함하는 것을 특징으로 하는 네비게이션서비스장치.
  2. 제 1 항에 있어서,
    상기 결정부는,
    상기 대표 타일로부터의 배열순서만큼의 상기 타일 길이를, 상기 대표 타일로부터의 X축, 또는 Y축으로 배열 방향에 따라 상기 대표 타일의 절대좌표 값에 가산하거나, 또는 감산한 결과 값을 상기 나머지 타일 각각의 상기 절대좌표로 결정하는 것을 특징으로 하는 네비게이션서비스장치.
  3. 제 1 항에 있어서,
    상기 다수의 타일 각각은,
    상기 지도데이터의 Z 축과 관련된 2 이상의 줌(Zoom) 레벨 각각과 관련하여, 상기 상대좌표가 상기 절대좌표로 변환되거나, 또는 상기 대표 타일로부터의 배열순서와 상기 타일 길이를 기초로 상기 절대좌표가 결정되는 것을 특징으로 하는 네비게이션서비스장치.
  4. 제 1 항에 있어서,
    상기 확인부는,
    상기 타일 길이를 상기 다수의 타일 각각의 픽셀 수로 나눈 결과 값을 상기 다수의 타일 각각에 포함된 객체(Object)를 표시하기 위한 단위 길이로 확인하는 것을 특징으로 하는 네비게이션서비스장치.
  5. 제 4 항이 있어서,
    상기 결정부는,
    상기 다수의 타일 각각의 절대좌표 값에 대해 상기 객체가 가지는 속성값만큼의 상기 단위 길이를 가산한 결과 값을, 상기 다수의 타일 각각에 포함된 객체가 가지는 상기 절대좌표로 결정하는 것을 특징으로 하는 네비게이션서비스장치.
  6. 지도데이터 내 동일한 크기로 배열된 다수의 타일 중 단말장치의 현재위치와 관련된 대표 타일, 및 상기 대표 타일과 이웃한 배열순서로 배치된 이웃 타일을 선택하는 선택단계;
    상기 대표 타일 및 상기 이웃 타일 각각이 가지는 구좌표계 상의 상대좌표를 단말에 표시하기 위한 평면좌표계 상의 절대좌표로 변환하는 변환단계;
    상기 대표 타일과 상기 이웃 타일 간의 상기 절대좌표의 차이를 기초로 상기 평면좌표계 상에서 상기 대표 타일이 가지는 타일 길이로 확인하는 확인단계; 및
    상기 대표 타일로부터의 배열순서와 상기 타일 길이를 기초로, 상기 대표 타일과 상기 이웃 타일을 제외한 나머지 타일 각각의 상기 절대좌표로 결정하는 결정단계를 포함하는 것을 특징으로 하는 네비게이션서비스장치의 동작 방법.
  7. 제 6 항에 있어서,
    상기 결정단계는,
    상기 대표 타일로부터의 배열순서만큼의 상기 타일 길이를, 상기 대표 타일로부터의 X축, 또는 Y축으로 배열 방향에 따라 상기 대표 타일의 절대좌표 값에 가산하거나, 또는 감산한 결과 값을 상기 나머지 타일 각각의 상기 절대좌표로 결정하는 것을 특징으로 하는 네비게이션서비스장치의 동작 방법.
  8. 제 6 항에 있어서,
    상기 다수의 타일 각각은,
    상기 지도데이터의 Z 축과 관련된 2 이상의 줌(Zoom) 레벨 각각과 관련하여, 상기 상대좌표가 상기 절대좌표로 변환되거나, 또는 상기 대표 타일로부터의 배열순서와 상기 타일 길이를 기초로 상기 절대좌표가 결정되는 것을 특징으로 하는 네비게이션서비스장치의 동작 방법.
  9. 제 6 항에 있어서,
    상기 확인단계는,
    상기 타일 길이를 상기 다수의 타일 각각의 픽셀 수로 나눈 결과 값을 상기 다수의 타일 각각에 포함된 객체(Object)를 표시하기 위한 단위 길이로 확인하는 것을 특징으로 하는 네비게이션서비스장치의 동작 방법.
  10. 제 9 항이 있어서,
    상기 결정단계는,
    상기 다수의 타일 각각의 절대좌표 값에 대해 상기 객체가 가지는 속성값만큼의 상기 단위 길이를 가산한 결과 값을, 상기 다수의 타일 각각에 포함된 객체의 상기 절대좌표로 결정하는 것을 특징으로 하는 네비게이션서비스장치의 동작 방법.
  11. 제 6 항 내지 제 10 항 중 어느 한 항의 방법에 따른 각 단계를 수행하기 위한 명령어를 포함하는 것을 특징으로 하는 기록매체.
KR1020150150891A 2015-10-29 2015-10-29 네비게이션서비스장치 및 그 동작 방법 KR102094202B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020150150891A KR102094202B1 (ko) 2015-10-29 2015-10-29 네비게이션서비스장치 및 그 동작 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020150150891A KR102094202B1 (ko) 2015-10-29 2015-10-29 네비게이션서비스장치 및 그 동작 방법

Publications (2)

Publication Number Publication Date
KR20170049946A true KR20170049946A (ko) 2017-05-11
KR102094202B1 KR102094202B1 (ko) 2020-03-27

Family

ID=58741029

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020150150891A KR102094202B1 (ko) 2015-10-29 2015-10-29 네비게이션서비스장치 및 그 동작 방법

Country Status (1)

Country Link
KR (1) KR102094202B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10785491B2 (en) 2018-02-20 2020-09-22 Electronics And Telecommunications Research Institute Method of visualizing image based on hierarchical presentation of image tile information, device and system using the method

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001351113A (ja) * 2000-06-08 2001-12-21 Osaka Gas Engineering Co Ltd 地図表示方法
KR20020025855A (ko) * 2001-12-28 2002-04-04 이계철 소용량 전자지도 저장 시스템 및 그 방법
KR20050114905A (ko) * 2004-06-02 2005-12-07 엘지전자 주식회사 지도데이터의 좌표 변환장치 및 방법
KR20080105869A (ko) * 2007-06-01 2008-12-04 엘지전자 주식회사 내비게이션 장치의 렌더링 성능 향상 방법

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001351113A (ja) * 2000-06-08 2001-12-21 Osaka Gas Engineering Co Ltd 地図表示方法
KR20020025855A (ko) * 2001-12-28 2002-04-04 이계철 소용량 전자지도 저장 시스템 및 그 방법
KR20050114905A (ko) * 2004-06-02 2005-12-07 엘지전자 주식회사 지도데이터의 좌표 변환장치 및 방법
KR20080105869A (ko) * 2007-06-01 2008-12-04 엘지전자 주식회사 내비게이션 장치의 렌더링 성능 향상 방법

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10785491B2 (en) 2018-02-20 2020-09-22 Electronics And Telecommunications Research Institute Method of visualizing image based on hierarchical presentation of image tile information, device and system using the method

Also Published As

Publication number Publication date
KR102094202B1 (ko) 2020-03-27

Similar Documents

Publication Publication Date Title
JP4709886B2 (ja) 測位制御装置及び測位制御方法
KR102544664B1 (ko) 네비게이션서비스장치 및 그 동작 방법
KR20240037931A (ko) 가상현실 기반으로 컨텐츠를 제공하기 위한 장치 및 방법
KR20160112137A (ko) 위치 측정이 이루어지는 단말 및 그 동작 방법
KR20170049946A (ko) 네비게이션서비스장치 및 그 동작 방법
KR102615620B1 (ko) 경로안내 기반 컨텐츠를 추천하기 위한 장치 및 방법
KR102175042B1 (ko) 네비게이션서비스장치 및 그 동작 방법
KR102174099B1 (ko) 네비게이션서비스장치 및 그 동작 방법
KR102174109B1 (ko) 네비게이션서비스장치 및 그 동작 방법
KR102159096B1 (ko) 네비게이션서비스장치 및 그 동작 방법
KR102204126B1 (ko) 네비게이션서비스장치 및 그 동작 방법
KR102174060B1 (ko) 네비게이션서비스장치 및 그 동작 방법
KR20170046464A (ko) 네비게이션서비스장치 및 그 동작 방법
KR102258848B1 (ko) 네비게이션서비스장치 및 그 동작 방법
KR20160126296A (ko) 경로안내장치 및 그 동작 방법
KR20170049931A (ko) 네비게이션서비스장치 및 그 동작 방법
KR102174101B1 (ko) 네비게이션서비스장치 및 그 동작 방법
KR102172161B1 (ko) 네비게이션서비스장치 및 그 동작 방법
KR102251217B1 (ko) 네비게이션서비스장치 및 그 동작 방법
KR20170049941A (ko) 네비게이션서비스장치 및 그 동작 방법
KR102296856B1 (ko) 장소 간 연관성 판별 방법 및 이에 적용되는 장치
KR102258844B1 (ko) 네비게이션서비스장치 및 그 동작 방법
KR102516380B1 (ko) 경로안내서비스장치 및 그 동작 방법
KR102622482B1 (ko) 자율 주행 차량을 제어하는 전자 장치 및 시스템
KR20170018525A (ko) 네비게이션서비스장치 및 그 동작 방법

Legal Events

Date Code Title Description
N231 Notification of change of applicant
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant