KR100443495B1 - 디지털 지도파일의 데이터구조 - Google Patents

디지털 지도파일의 데이터구조 Download PDF

Info

Publication number
KR100443495B1
KR100443495B1 KR10-2001-7006452A KR20017006452A KR100443495B1 KR 100443495 B1 KR100443495 B1 KR 100443495B1 KR 20017006452 A KR20017006452 A KR 20017006452A KR 100443495 B1 KR100443495 B1 KR 100443495B1
Authority
KR
South Korea
Prior art keywords
unit
map
data
node
map file
Prior art date
Application number
KR10-2001-7006452A
Other languages
English (en)
Other versions
KR20010087397A (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 마쯔시다덴기산교 가부시키가이샤
Publication of KR20010087397A publication Critical patent/KR20010087397A/ko
Application granted granted Critical
Publication of KR100443495B1 publication Critical patent/KR100443495B1/ko

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • 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/38Electronic maps specially adapted for navigation; Updating thereof
    • G01C21/3804Creation or updating of map data
    • G01C21/3807Creation or updating of map data characterised by the type of data
    • G01C21/3815Road data
    • 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/38Electronic maps specially adapted for navigation; Updating thereof
    • G01C21/3863Structures of map data
    • G01C21/387Organisation of map data, e.g. version management or database structures
    • G01C21/3878Hierarchical structures, e.g. layering
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • 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/38Electronic maps specially adapted for navigation; Updating thereof
    • G01C21/3885Transmission of map data to client devices; Reception of map data by client devices
    • G01C21/3896Transmission of map data from central databases

Landscapes

  • Engineering & Computer Science (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Databases & Information Systems (AREA)
  • Business, Economics & Management (AREA)
  • Theoretical Computer Science (AREA)
  • General Health & Medical Sciences (AREA)
  • Economics (AREA)
  • Human Resources & Organizations (AREA)
  • Marketing (AREA)
  • Primary Health Care (AREA)
  • Strategic Management (AREA)
  • Tourism & Hospitality (AREA)
  • General Business, Economics & Management (AREA)
  • Health & Medical Sciences (AREA)
  • Traffic Control Systems (AREA)
  • Instructional Devices (AREA)
  • Navigation (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

본 발명은 어느 하나가 갱신된 경우에 인접 유닛의 지도파일을 갱신할 필요가 없는 지도파일을 판독하기 위한 단말장치를 제공하는 것으로서, 그를 위해서 지도를 복수의 영역으로 분할하여 얻어지는 각 유닛을 나타내는 지도파일은 노드마다 작성되는 노드레코드와 링크마다 작성되는 링크레코드를 포함하고, 소정의 노드레코드에는 유닛과 이 유닛에 인접하는 유닛의 도로의 접속관계를 규정하는 인접 노드의 좌표정보가 기록되며, 이상의 지도파일은 제 1 기억장치(19)에 저장되고, 상기 데이터 처리부(13)는 지도파일을 이용하여 경로를 탐색하는 처리를 실행하고, 데이터 처리부(13)는 경로탐색처리가 한창인 때에 한쪽 유닛 및 다른쪽 인접 유닛의 인접 노드가 갖는 좌표정보에 기초하여 상기 한쪽 유닛 내의 도로로부터 상기 다른쪽 인접 유닛 내의 도로로의 접속을 찾아가는 것을 특징으로 한다.

Description

디지털 지도파일의 데이터구조{DATA STRUCTURE OF DIGITAL MAP FILE}
「제 1 배경기술」
근래 네비게이션 시스템이 탑재된 차량이 증가되고 있다. 네비게이션 시스템은 당초 화면 상에 지도를 작성하는 파일(이하, 지도파일)만이 제공되고 있다. 그러나, 근래는 지도파일에 덧붙여 예를 들면 교통정보 및 경로안내정보도 제공되게 되었다. 이러한 정보의 다양화에 의해 네비게이션 시스템은 보다 편리하게 되어, 이후에도 급속하게 보급될 것으로 기대되고 있다.
당초 네비게이션 시스템에는 CD-ROM으로 대표되는 판독전용 기록매체를 갖는 기억장치가 탑재되어 있다. 이 기록매체에는 사용자에게 제공되어야 하는 지도파일과 그 관련데이터가 미리 기록되어 있다. 기억장치는 기억매체에 기록된 지도파일을 필요에 따라 판독한다. 판독된 지도파일은 사용자에 의해 참조되거나, 경로탐색처리 또는 맵 매칭처리에 이용되고 있다.
일반적으로 디지털 지도파일은 서로 축척이 다른 지도의 계층구조를 효율적으로 관리하기 위해 상기 각 지도를 경도방향 및 위도방향으로 등간격으로 분할한 장방형 영역마다 작성된다. 이하, 「제 1 배경기술」에 있어서 이러한 장방형 영역을 이하에서는 유닛이라 부른다.
이러한 지도파일은 전형적으로는 카 네비게이션 시스템에 있어서 경로탐색처리 또는 현재위치의 보정처리(맵 매칭)에 이용된다. 그 때문에 지도파일에는 도로네트워크 데이터가 기록된다. 도로 네트워크 데이터는 적어도 각 노드 및 각 링크의 접속관계를 나타내는 접속정보로 구성된다. 여기에서 노드란 주로 도로망에 존재하는 교차점을 나타내는 정보이고, 링크란 주로 2개의 교차점간에 존재하는 도로를 나타내는 벡터정보이다. 이러한 노드 및 링크의 집합에 의해 각각의 유닛 내의 도로 네트워크를 나타내는 지도가 표현된다.
상기 노드, 링크 및 이러한 접속정보로 최소한의 도로망을 표현할 수 있지만, 이것만으로는 지도를 표시하는 용도로는 불충분하다. 예를 들면, 산악부나 임해부의 도로에서는 교차점간의 도로가 굴곡되어 있는 경우가 많다. 그래서 도로 네트워크 데이터는 굴곡된 도로의 형상을 표시하기 위해 링크형상을 특정하기 위한 정보를 또한 포함한다. 이상에서 알 수 있는 바와 같이, 링크는 벡터 데이터로 표현되는 경우가 많다.
또, 도로에는 국도 및 현도(縣道)와 같이 여러가지 종류가 있다. 이밖에도 차선수의 상위 또는 중앙분리대의 유무 등에 의해 도로를 분류할 수 있다. 이러한 도로의 종류를 구별하기 위해 도로 네트워크 데이터는 도로의 종별 등을 나타내는속성정보를 또한 포함하고 있다.
또, 교차점에는 교차점 명칭이 붙여져 있는 것이나 붙여져 있지 않은 것이 있다. 또한 신호기가 설치되어 있는 교차점, 신호기가 설치되어 있지 않은 교차점이 있다. 그래서, 도로 네트워크 데이터는 또한 노드 마다 속성정보를 갖고 있다. 각 속성정보에는 대응하는 교차점의 명칭 및 신호기의 유무 등의 정보가 기록된다.
또, 벡터 데이터 구조를 갖는 지도파일에서는 복수의 유닛에 걸치는 도로가 존재하는 경우에 유닛의 경계에 특별한 노드(이후, 인접 노드)가 별도로 작성된다. 이러한 인접 노드를 경유함으로써 서로 인접하는 유닛과의 사이에서 도로의 접속관계를 찾아갈 수 있게 된다. 종래의 지도파일에서는 어떤 유닛의 인접 노드가 인접하는 유닛의 어느 인접 노드와 대응하는지를 특정하기 위해 오프셋 어드레스 및 레코드 번호가 기록되어 있다. 여기에서 오프셋 어드레스는 기준 어드레스에서 보아 인접 노드가 어느 어드레스 위치에 기록되어 있는지를 나타낸다. 또, 레코드 번호란 인접 유닛의 지도파일에 있어서 선두 노드에서 기산하여 인접 노드가 몇 번째의 위치에 기록되어 있는지를 나타낸다.
「제 2 배경기술」
「제 1 배경기술」에서 설명한 바와 같이, 종래의 네비게이션 시스템은 당초 판독전용 기록매체에 기록된 지도파일밖에 이용할 수 없기 때문에, 리얼타임성이 높은 정보를 제공하는 것이 곤란했다. 이러한 리얼타임성이 높은 정보로서는 교통정보 또는 기상정보가 대표적이다. 그 때문에 리얼타임성이 요구되는 정보, 또 지도파일을 제공할 수 있는 지도제공 시스템이 예를 들면 「일본 특개평 7-262493호」 공보에 개시되어 있다. 이 공보의 지도제공 시스템에서는 지도파일 및 리얼타임성이 높은 정보가 정보제공 센터로부터 차탑재용 단말장치로 통신 미디어를 통해 다운로드된다.
또, 지도제공 시스템은 정보를 리얼타임으로 제공하기 위해 이동체 통신기술과 디지털 방송기술에 기초하여 구축된다. 이와 같은 지도제공 시스템에서, 센터국은 서비스 지역 내에 존재하는 이동체에 대해 소정의 방송용 채널을 이용하여 정보를 분배한다. 센터국으로서는 통신위성(소위 CS), 방송위성(소위 BS) 또는 지상파의 디지털 방송국이 전형적이다. 이 이동체 통신기술과 디지털 방송기술이 이용된 지도제공 시스템은 예를 들면 「일본 특개평 7-154350호」공보에 개시되어 있다. 보다 구체적으로, 이 공보에는 어느 정보의 방송지역을 한정하기 위한 기술적 내용이 개시되어 있다. 즉, 센터국은 다중화된 정보를 방송미디어를 통해 송신할 때에 각 정보에 우편번호와 같은 지역 코드를 붙인다. 단말장치는 자신의 현재위치에 대응하는 지역 코드를 ID로서 미리 메모리에 등록해 둔다. 단말장치의 내부에서는 데이터 추출회로가 방송국에서 방송되는 다중정보를 분리하여 각 정보에 부가된 지역코드를 추출한다. 또, 단말장치의 내부에서는 추출한 지역코드와 등록된 ID가 비교된다. 양자가 일치하는 경우에 단말장치는 대상이 된 지역코드가 붙여진 정보를 사용자에게 참조시킨다.
이상과 같이, 통신 또는 방송에 의해 지도를 제공하는 지도제공 시스템의 개발이 최근 활발하다. 이 지도제공 시스템에 있어서 센터국은 단말장치에 송신되어 야 하는 지도파일을 유닛단위로 판독하여 상기 단말장치에 송신한다. 단말장치는센터국으로부터의 지도 데이터를 수신한 후에 기억장치에 저장한다. 저장된 지도파일은 필요에 따라 사용자의 참조, 경로탐색처리 또는 맵 매칭처리를 위해 이용된다.
「제 1 배경기술의 과제」
「제 1 배경기술」에서 알 수 있는 바와 같이, 종래에는 어느 유닛의 지도파일에는 인접 유닛의 지도파일 내부의 데이터 구조를 직접 지시하는 정보(상기한 오프셋 어드레스 또는 레코드 번호)가 기록되어 있다.
예를 들면, 어느 유닛 내의 도로가 새롭게 조성된 경우에는 당연히 상기 유닛의 지도파일은 갱신된다. 갱신된 지도파일에서는 인접 노드가 기록되는 위치가 바뀌는 경우가 많다. 그 때문에, 종래와 같은 지도파일 내부의 데이터구조를 직접 지시하는 방법을 채용하면, 인접 유닛의 지도파일에 기록된 인접 노드로부터 갱신된 지도파일에 있어서 대응하는 인접 노드를 정확하게 찾아갈 수 없게 된다. 즉, 어느 하나의 지도파일이 갱신되면 인접 유닛의 지도파일도 갱신하지 않으면 안 되는 경우가 많아지는 문제점이 있었다.
또, 상기한 디지털 지도파일의 품질을 평가하는 척도로서 지도의 상세도가 있다. 그러나, 지도파일은 링크가 벡터 데이터로 표현되기 때문에 상세한 지도를 표현하려고 하면 할수록 상기 지도파일의 데이터량이 커지는 문제점이 있었다.
종래, 이러한 지도파일은 주로 카 네비게이션 시스템에서 사용된다. 카 네비게이션 시스템에서는 CD-ROM, DVD-ROM 또는 하드 디스크 등의 대용량 기억매체에 지도파일이 기록된다. 그러나, 금후 지도파일은 카 네비게이션 시스템만이 아니라, 사람이 휴대할 수 있는 정보기기에 있어서도 사용되는 것을 생각할 수 있다. 이러한 휴대형 정보기기에 카 네비게이션 시스템과 같은 대용량 기억매체를 탑재하는 것은 어렵다. 이러한 점에서 지도파일의 데이터량을 압축할 필요성은 높다.
「제 2 배경기술의 과제」
그런데, 「제 2 배경기술」난에서 나타낸 각 공보는 단말장치가 지도파일을 기억장치에 어떻게 하여 저장하는지에 대해 조금도 개시하고 있지 않다. 용이하게 생각해 낼 수 있는 것은 단말장치가 수신한 유닛마다의 지도파일을 작성하여 작성한 지도파일을 기억장치에 저장한다는 방법이다. 그러나, 이 방법에서는 기억영역의 이용효율이 나빠지는 문제점이 있었다. 지금, 예를 들면 어느 범위를 나타내는 지도β가 도 71과 같이 64개의 장방형 유닛으로 구획화된다고 가정한다. 또, 단말장치가 4개의 유닛(71에서 74)을 수신하여 저장한다고 가정한다. 또, 주지한 바와 같이 기억장치의 기억영역은 클러스터 단위로 관리된다. 또, 각 유닛의 데이터 사이즈는 클러스터 사이즈의 정수배에 일치한다고는 할 수 없다. 그 때문에, 단말장치가 수신한 4개의 유닛(71~74)에 대해 4개의 파일(81~84)을 작성하면 도 72에 나타낸 바와 같이 빈 영역을 갖는 4개의 클러스터(91~94)가 발생하는 경우가 많다. 도 72에 있어서, 도트가 있는 부분은 각 파일(81~84)이 기록된 영역을 나타낸다. 또, 사선이 쳐진 부분은 빈 영역을 나타낸다. 각 클러스터(91~94)에 생긴 빈 영역은 사용되지 않는다. 즉, 설령 단말장치가 각 유닛(71~74) 이외의 유닛(75)(도 71 참조)을 수신한다고 해도 이 유닛(75)을 기초로 작성된 파일은 각 클러스터(91~94)의 빈 영역에 저장되는 일은 없다. 이상에서 알 수 있는 바와 같이, 단말장치가수신하는 유닛이 많아지면 많아질수록, 빈 영역을 갖는 클러스터가 많아진다. 즉, 기억영역의 이용효율이 나빠진다.
그런데, 지도가 상대적으로 소수의 유닛으로 구획되면 빈 영역을 갖는 클러스터를 발생하기 어렵게 하는 것이 가능하다. 지금, 도 71과 같은 범위의 지도β가 도 73과 같이 16개의 장방형 유닛으로 구획된다고 가정한다. 도 73의 유닛(76)이 나타내는 범위는 도 71의 유닛(71~74)을 합친 범위에 상당한다. 또, 단말장치가 1개의 유닛(76)을 수신하여 저장한다고 가정한다. 이 가정하에서는 단말장치가 수신한 1개의 유닛(76)에 대해 1개의 파일(86)을 작성하면 도 74에 나타낸 바와 같이 빈 영역을 갖는 클러스터(96)가 1개밖에 발생하지 않는다. 도 74의 도트부분은 파일(86)이 기록된 영역을 나타낸다. 또, 사선부분은 빈 영역을 나타낸다.
이상에서 알 수 있는 바와 같이, 지도가 작은 유닛으로 구획된 경우(도 71 참조), 어느 범위를 나타내는 지도파일이 기억장치에 저장되면, 상대적으로 많은 빈 영역이 발생한다(도 72 참조). 그러나, 지도가 큰 유닛으로 구획된 경우에는(도 73 참조), 같은 범위의 지도데이터가 기억장치에 저장되어도 발생하는 빈 영역은 적다(도 74 참조). 즉, 기억영역의 유효이용의 관점에서는 지도는 소수의 유닛으로 구획되는 편이 좋다.
그러나, 지도를 소수의 유닛으로 구획한다는 것은 1유닛당 데이터량이 커지는 것을 의미한다. 그 때문에, 기지국은 한번에 대량의 데이터를 단말장치에 송신하지 않으면 안 된다. 그 결과, 무선전송로는 폭주상태에 빠지기 쉬워지는, 즉 무선전송로의 이용효율이 나빠진다고 하는 다른 문제점이 생긴다. 즉, 기억영역을중시하면 무선전송로의 효율적인 이용이 어렵고, 무선전송로를 중시하면 기억영역의 효율적인 이용이 어려워지는 문제점이 있었다.
따라서, 본 발명의 제 1 목적은 어느 하나가 갱신된 경우에 인접 유닛의 지도파일을 갱신할 필요가 없는 지도파일의 데이터 구조를 제공하는 것이다. 또, 본 발명의 제 2 목적은 그 데이터량을 압축할 수 있는 지도파일의 데이터구조를 제공하는 것이다. 또, 본 발명의 제 3 목적은 단말장치 내의 기억영역을 효율적으로 이용하고, 또 센터국과 단말장치 사이의 전송로를 효율적으로 이용할 수 있는 지도제공 시스템을 제공하는 것이다.
본 발명은 단말장치에 관한 것으로서, 보다 구체적으로는 지도를 복수의 영역으로 분할하여 얻어지는 각 유닛이 디지털 데이터화된 지도파일이 내부 기억장치에 저장되어 있고, 상기 기억장치로부터 지도파일을 판독하는 단말장치에 관한 것이다.
도 1은 본 발명의 제 1 실시형태에 관련된 지도제공 시스템의 구성을 나타낸 블럭도,
도 2는 도 1에 나타낸 제 1 지도파일(111) 및 제 2 지도파일(25)에 의해 표현되는 지도의 계층구조를 설명하기 위한 도면,
도 3은 도 2에 나타낸 최상위 계층(레벨「3」)의 유닛(U3)을 설명하기 위한도면,
도 4는 레벨「3」에서 레벨「0」까지의 각각의 계층간에 있어서 부자관계를 설명하기 위한 도면,
도 5는 제 1 지도파일(111) 및 제 2 지도파일(25)을 관리하기 위한 트리구조를 나타낸 도면,
도 6은 어느 레벨에 속하는 하나의 유닛(U)의 데이터 구조를 나타낸 도면,
도 7은 지도파일(CF)의 데이터 구조를 나타낸 도면,
도 8은 배경 데이터에 의해 표현되는 지도의 모식도,
도 9는 묘화 오브젝트(BO1 및 BO2)를 이용하여 묘화 오브젝트의 개념을 설명하기 위한 도면,
도 10은 배경 데이터 테이블의 상세한 데이터구조를 나타낸 도면,
도 11은 8개의 요소점(P0~P7)으로 구성되는 도형 데이터를 나타낸 도면,
도 12는 도 11의 P0~P7의 각 절대좌표를 오브젝트 레코드(OR)에 기술한 때의 데이터구조를 나타낸 도면,
도 13은 도 11과 동일한 도형 데이터의 각 요소점(P0~P7)을 상대좌표로 표현한 때의 도면,
도 14는 도 13의 요소점(P0~P7)의 각 상대좌표를 오브젝트 레코드(OR)에 기술한 때의 데이터구조를 나타낸 도면,
도 15는 요소점(P0, P1 및 Pn)으로 구성된 오브젝트(OBJ)를 나타내는 도면,
도 16은 도 15의 요소점(P1 및 Pn)을 연결하는 직선상에 보완되는 요소점(P2및 P3)을 나타낸 도면,
도 17은 도 16의 요소점(P0, P1, P2, P3 및 Pn)의 각 상대좌표정보를 오브젝트 레코드(OR)에 기술한 때의 데이터 구조를 나타낸 도면,
도 18은 도 15의 요소점(P0 및 Pn)을 절대좌표로 표현하고, 요소점(P1)을 상대좌표로 표현한 때의 오브젝트 레코드(OR)의 데이터 구조를 나타낸 도면,
도 19는 묘화 오브젝트(DO3)를 이용하여 오브젝트의 경계에 상대좌표가 적용되지 않는 경우를 설명하기 위한 도면,
도 20은 그 오브젝트 경계에 상대좌표가 적용되지 않은 묘화 오브젝트(DO3)의 좌표열의 데이터 구조를 나타낸 도면,
도 21은 묘화 오브젝트(DO3)를 이용하여 오브젝트의 경계에 적용되는 상대좌표를 설명하기 위한 도면,
도 22는 그 오브젝트의 경계에 상대좌표가 적용된 묘화 오브젝트(DO3)의 좌표열의 데이터구조를 나타낸 도면,
도 23은 기본문자 기호테이블 및 상세문자 기호테이블과의 관계를 설명하기 위한 도면,
도 24는 문자기호 테이블의 상세한 데이터구조를 나타낸 도면,
도 25는 제 1 도로 네트워크 데이터 및 제 2 도로 네트워크 데이터의 관계를 설명하기 위한 도면,
도 26은 노드 및 링크의 개념을 설명하기 위한 도면,
도 27은 제 1 노드 테이블의 상세한 데이터 구조를 나타낸 도면,
도 28은 도 26의 노드(N0~N10)에 관해 작성된 노드 레코드(NR1~NR11)의 나열방법을 나타낸 도면,
도 29는 노드의 경도방향 및 위도방향의 좌표의 표현방법의 하나인 정규화 좌표를 설명하기 위한 도면,
도 30은 제 1 링크 테이블의 상세한 데이터 구조를 나타낸 도면,
도 31은 각 링크 레코드(LR)에 기록되는 링크접속정보를 설명하기 위한 도면,
도 32는 노드접속정보 및 링크접속정보에 의해 도로망의 접속을 찾아갈 때의 처리를 설명하기 위한 도면,
도 33은 단말장치(1)에 있어서 경로탐색처리의 개념을 나타낸 도면,
도 34는 단말장치(1)에서 실행되는 쌍방향 계층별 탐색의 처리순서를 나타낸 플로우차트,
도 35는 도 34의 지도파일(CF)의 읽기처리(스텝(S103))의 상세한 처리순서를 나타낸 플로우차트,
도 36은 인접 유닛(NU)을 결정하기 위한 새로운 대표점의 위치를 설명하기 위한 도면,
도 37은 서로 인접하는 4개의 유닛(U1~U4)을 나열한 때에 구성되는 도로망을 나타낸 도면,
도 38은 2개의 유닛(U)의 경계를 넘어 도로망의 접속을 찾아갈 때의 데이터 처리부(13)의 처리순서를 나타낸 플로우차트,
도 39는 인접 노드의 노드 레코드(NR)가 기록되는 순번을 나타낸 도면,
도 40은 하위계층 및 상위계층의 지도파일(CF)의 노드(N)끼리의 대응에 관한 문제점을 설명하기 위한 도면,
도 41은 하위계층 및 상위계층의 지도파일(CF)의 노드(N)끼리의 대응관계를 설명하기 위한 도면,
도 42는 정규화 좌표 및 노드 레코드(NR)의 기록순서에서 자(子)유닛(CU)의 노드(Nd)와 대응하는 좌표를 갖는 부(父)유닛(PU)내의 노드를 찾아내는 방법을 설명하기 위한 도면,
도 43은 지도파일(CF)의 송신요구시에 있어서 단말장치(1)의 처리를 설명하기 위한 도면,
도 44는 센터국(2)이 요구(REQ)의 수신후에 실행하는 처리순서를 나타낸 플로우차트,
도 45는 지도파일(CF)에서 패킷(P)이 조립되기까지의 과정에 있어서 각 데이터의 구조를 나타낸 도면,
도 46은 스텝(S504)의 상세한 처리순서를 나타낸 플로우차트,
도 47은 마스터데이터(MD)의 상세한 내부 데이터 구조를 나타낸 도면,
도 48은 단말장치(1)에 있어서 지도파일(CF)의 수신처리의 순서를 나타낸 플로우차트,
도 49는 도 48의 스텝(S703)의 상세한 처리순서를 나타낸 플로우차트,
도 50은 패킷(P11, P12, …, P1j, …Pij)에서 지도파일(CF)이 작성되기까지의 과정에 있어서 각 데이터의 구조를 나타낸 도면,
도 51은 도 48의 스텝(S704)의 상세한 처리의 순서를 나타낸 플로우차트,
도 52는 본 발명의 제 2 실시형태에 관련된 지도제공 시스템의 구성을 나타낸 블럭도,
도 53은 도 52에 나타낸 제 1 기억장치(1013)에 저장된 각 지도파일(CF)의 구조를 나타낸 도면,
도 54는 도 53의 (b)에 나타낸 각 유닛 레코드(UR)의 상세한 구조를 나타낸 도면,
도 55는 도 54에 나타낸 배경데이터(BD)를 설명하기 위한 도면,
도 56은 도 54에 나타낸 문자기호 데이터(CD)를 설명하기 위한 도면,
도 57은 도 54에 나타낸 도로 네트워크 데이터(ND)를 설명하기 위한 도면,
도 58은 도 54에 나타낸 기본배경 테이블데이터(BBD), 기본문자 기호데이터 테이블(BCD) 및 주요간선 네트워크 데이터테이블(MND)을 중첩한 때에 표시되는 지도 및 도 54에 나타낸 상세배경 테이블데이터(DBD), 상세문자기호 데이터테이블(DCD) 및 세가로(細街路) 네트워크 데이터테이블(SND)을 중첩한 때에 표시되는 지도를 나타낸 도면,
도 59는 도 52에 나타낸 센터국(101)에 있어서 실행되는 처리의 순서를 나타낸 플로우차트,
도 60은 도 52에 나타낸 센터국(101)이 지도파일(CF)에서 패킷(P)을 생성하기까지의 과정에 있어서 각 데이터의 구조를 나타낸 도면,
도 61은 도 59에 나타낸 스텝(S1003)이 포함하는 상세한 처리순서를 나타낸 플로우차트,
도 62는 도 60의 (b)에 나타낸 마스터데이터(MD)의 상세한 구조를 나타낸 도면,
도 63은 도 52에 나타낸 단말장치(102)에 있어서 실행되는 처리의 순서를 나타낸 플로우차트,
도 64는 도 63에 나타낸 스텝(S1203)의 상세한 처리순서를 나타낸 플로우차트,
도 65는 도 52에 나타낸 단말장치(102)가 패킷(P)에서 지도파일(CF)을 생성하기까지의 과정에 있어서 각 데이터의 구조를 나타낸 도면,
도 66은 도 63에 나타낸 스텝(S1204)이 포함하는 상세한 처리순서를 나타낸 플로우차트,
도 67은 도 52에 나타낸 지도파일(CF)의 구조를 나타낸 도면,
도 68은 도 66에 나타낸 스텝(S1406)에 있어서 제 1 및 제 2 유닛(ID)이 일치하지 않는 경우에 파일관리부(1025)가 실행하는 처리를 나타낸 도면,
도 69는 도 54에 나타낸 기본배경 데이터테이블(BBD), 기본문자기호 데이터테이블(BCD), 주요간선 네트워크 데이터테이블(MND)이 스텝(S1204)의 시점에서 단말장치(102)에 이미 제공되어 있는 경우에 있어서 지도파일(CF)의 구조를 나타낸 도면,
도 70은 도 66에 나타낸 스텝(S1406)에 있어서 제 1 및 제 2 유닛(ID)이 일치하는 경우에 파일관리부(1025)가 실행하는 처리를 나타낸 도면,
도 71은 어느 범위를 나타내는 지도β가 64개의 장방형 유닛으로 구획화된 경우를 나타낸 도면,
도 72는 단말장치의 기억장치 내에 있어서 빈 영역을 갖는 4개의 클러스터(91~94)가 발생한 때의 모습을 나타낸 도면,
도 73은 어느 범위를 나타내는 지도β가 16개의 장방형 유닛으로 구획된 경우를 나타낸 도면 및
도 74는 단말장치의 기억장치 내에 있어서 빈 영역을 갖는 1개의 클러스터(96)가 발생한 경우를 나타내고 있고, 또 이러한 경우에는 무선전송로의 이용효율이 나빠지는 것을 설명하기 위한 도면이다.
한 태양은 지도를 복수의 영역으로 분할하여 얻어지는 각 유닛이 디지털 데이터화된 지도파일이 기억장치에 저장되어 있고, 상기 기억장치로부터 지도파일을 판독하기 위한 단말장치에 있어서,
각 지도파일은 각각의 유닛 내에 포함되는 도로망을 노드와 링크로 나타내기 위해 상기 노드마다 작성되는 노드 레코드와 상기 링크마다 작성되는 링크 레코드를 포함하고 있고,
각 노드 레코드에는 도로망 상의 교차점을 나타내는 비인접 노드에 관련되는 정보 또는 유닛과 그것에 인접하는 유닛의 도로의 접속관계를 규정하는 인접 노드에 관련되는 정보가 기록되어 있고,
인접 노드에 관련되는 정보는 상기 인접 노드의 좌표정보이고,
사용자의 조작에 응답하여 지도의 범위를 지정하는 정보를 생성하는 입력장치,
입력장치에 의해 생성된 정보에 기초하여 필요한 지도파일의 기록영역을 특정하는 데이터 처리부 및
데이터 처리부에 의해 특정된 기록영역에 기초하여 기억장치로부터 지도파일을 판독하는 판독제어부를 구비하고,
데이터 처리부는
판독제어부에 의해 판독된 지도파일에 기록된 노드 레코드 및 링크 레코드를 이용하여 소정의 처리를 실행하고,
한쪽 유닛 및 다른 쪽 인접 유닛의 인접 노드가 갖는 좌표정보에 기초하여 상기 한쪽 유닛 내의 도로에서 상기 다른 쪽 인접 유닛 내의 도로로의 접속을 찾아간다.
상기 태양에서, 데이터 처리부는 경로탐색처리를 한창 실행하고 있는 중에 유닛 및 인접 유닛의 인접 노드의 좌표정보를 기초로 상기 유닛 및 상기 인접 유닛 사이를 넘는 도로의 접속을 찾아간다. 이와 같이, 데이터 처리부는 각 지도파일 내부의 데이터 구조를 직접 지시하는 정보를 참조하는 일 없이 2개의 유닛 사이의 도로의 접속을 찾아갈 수 있다. 이것에 의해 기억장치 내의 어느 유닛의 지도파일을 갱신할 때, 인접 유닛의 지도파일을 갱신할 필요가 없어진다.
또, 다른 태양은 지도를 복수의 영역으로 분할하여 얻어지는 각 유닛이 디지털 데이터화된 지도파일이 기억장치에 저장되어 있고, 상기 기억장치로부터 지도파일을 판독하기 위한 단말장치에 있어서,
각 지도파일은 자신이 나타내는 지도의 범위를 일의적으로 특정하는 파일명이 붙여져서 기억장치에 저장되어 있고,
사용자의 조작에 응답하여 지도의 범위를 지정하는 정보를 생성하는 입력장치,
입력장치에 의해 생성된 정보에 기초하여 필요한 지도파일의 기록영역을 특정하는 데이터 처리부 및
데이터 처리부에 의해 특정된 기록영역에 기초하여 기억장치로부터 지도파일을 판독하는 판독제어부를 구비한다.
상기 태양에 의하면 각 지도파일에는 자신이 나타내는 지도의 범위를 일의적으로(uniquely) 특정하는 파일명이 붙여진다. 그 때문에 데이터 처리부는 각각 이름에서 서로 인접하는 지도파일을 특정할 수 있다. 이와 같이, 상기 태양에 의하면 각 지도파일에는 인접하는 유닛의 지도파일의 데이터구조에 관련되는 정보를 기록할 필요가 없어지기 때문에 복수의 지도파일 사이의 관계가 엷어진다. 이것에 의해 어느 하나의 지도파일을 갱신한 경우에 있어서도 그밖의 지도파일을 갱신할 필요가 없어진다.
또, 다른 태양은 지도를 복수의 영역으로 분할하여 얻어지는 각 유닛이 디지털 데이터화된 지도파일이 기억장치에 저장되어 있고, 상기 기억장치로부터 지도파일을 판독하기 위한 단말장치에 있어서,
각 유닛 내에 포함되는 각 배경은 한번에 쓰기 가능한 오브젝트 단위로 분할되고, 상기 복수의 오브젝트는 서로 동일한 속성을 갖는 것마다 그룹화되고,
지도파일은 각 그룹마다 오브젝트에 관련되는 정보가 기록되는 배경 레코드를 포함하고 있고,
사용자의 조작에 응답하여 지도의 범위를 지정하는 정보를 생성하는 입력장치,
입력장치에 의해 생성된 정보에 기초하여 필요한 지도파일의 기록영역을 특정하는 데이터 처리부,
데이터 처리부에 의해 특정된 기록영역에 기초하여 기억장치로부터 지도파일을 판독하는 판독제어부 및
출력장치를 구비하고,
데이터 처리부는 판독제어부에 의해 판독된 지도파일에 포함되는 배경 레코드에 기초하여 출력장치 상에 배경을 표시시킨다.
상기 태양에 의하면 지도파일에서 동일 속성의 오브젝트는 같은 배경 레코드에 함께 기록되기 때문에 상기 속성을 나타내는 정보를 장황하게 기록할 필요가 없어 각 지도파일의 데이터량을 압축하는 것이 가능하게 된다.
또, 다른 태양은 서로 축척이 다른 복수의 지도를 각각 복수의 영역으로 분할하여 얻어지는 각 유닛이 디지털 데이터화된 지도파일이 기억장치에 저장되어 있고, 상기 기억장치로부터 지도파일을 판독하기 위한 단말장치에 있어서,
복수의 지도파일은 축척에 따라 계층적인 구조를 갖고 있고, 각각의 유닛 내에 포함되는 도로망을 노드와 링크로 나타내기 위해 상기 노드마다 작성되고, 또 상기 노드의 좌표정보가 기록되는 노드 레코드와, 상기 링크마다 작성되는 링크 레코드를 적어도 포함하고 있고,
각 지도파일에는 노드의 좌표정보가 오름차순 또는 내림차순이 되도록 노드 레코드가 기록되어 있고,
지도의 범위를 지정하는 정보를 생성하는 입력장치,
입력장치에 의해 생성된 정보에 기초하여 필요한 지도파일의 기록영역을 특정하는 데이터 처리부 및
데이터 처리부에 의해 특정된 기록영역에 기초하여 기억장치로부터 지도파일을 판독하는 판독제어부를 구비하고,
데이터 처리부는
판독 제어부에 의해 판독된 지도파일에 기록된 좌표정보에 기초하여 하위계층의 유닛에 포함되는 노드에 대응하는 상위계층의 유닛의 노드를 검색한다.
상기 태양에서, 데이터 처리부는 노드의 좌표정보를 기초로 판독제어부에 의해 판독된 지도파일에 기록된 좌표정보에 기초하여 하위계층의 유닛에 포함되는 노드에 대응하는 상위계층의 유닛의 노드를 검색한다. 이와 같이 데이터 처리부는 각 지도파일 내부의 데이터 구조를 직접 지시하는 정보를 참조하는 일 없이 다른 계층간에 있어서 같은 좌표를 갖는 노드를 찾아갈 수 있다. 이것에 의해 기억장치 내의 어느 유닛의 지도파일을 갱신할 때, 인접 유닛의 지도파일을 갱신할 필요가 없어진다.
또, 다른 태양은 센터국이 단말장치에 전송로를 통해 지도파일을 제공하는 시스템에 있어서,
센터국은
이미 정해진 범위의 지도를 나타내는 지도파일을 기억하는 제 1 기억장치,
제 1 기억장치에서 지도파일의 일부 또는 전부를 지도 데이터로서 판독하는 판독제어부,
판독제어부에 의해 판독된 지도데이터를 이용하여 전송로에 있어서 적절한 형식의 패킷을 조립하는 패킷 조립부 및
패킷 조립부에 의해 조립된 패킷을 전송로를 통해 단말장치에 송신하는 송신부를 구비하고,
단말장치는
전송로를 통해 송신부에 의해 송신된 패킷을 수신하는 수신부,
수신부에 의해 수신된 패킷을 분해하여 지도데이터를 복원하는 처리를 실행하는 데이터 처리부 및
그 내부의 기억매체에 지도파일을 기억하는 제 2 기억장치를 구비하고,
데이터 처리부는
금회에 복원한 지도 데이터에 관련되는 지도파일이 제 2 기억장치에 이미 저장되어 있는 경우에는 상기 제 2 기억장치로부터 상기 지도파일을 판독하고, 또
복원한 지도 데이터를 판독된 제 2 지도파일에 추가하여 제 2 기억장치에 저장하는 처리를 실행한다.
상기 태양에서는 데이터 처리부는 금회 복원한 지도 데이터와, 제 2 기억장치로부터 판독된 지도파일을 하나로 합쳐 상기 제 2 기억장치에 저장하고, 이것에의해 지도파일을 갱신한다. 이와 같이 데이터 처리부는 수신부가 수신한 지도 데이터에만 기초하여 지도파일을 작성하지 않는다. 데이터 처리부는 금회 수신된 지도데이터를 금회 판독된 지도파일에 추가한다. 그 때문에 제 2 기억장치는 데이터량이 작은 지도파일을 다수 저장하지 않고 어느 합친 데이터량의 지도파일을 저장하기 때문에 빈 영역을 갖는 클러스터가 발생하기 어렵게 된다. 이것에 의해 단말장치측의 기억영역을 효율적으로 이용할 수 있는 지도제공 시스템을 실현할 수 있다.
또, 상기 태양에서는 센터국이 작은 사이즈의 지도 데이터를 송신해도 단말장치가 센터국에서 제공된 지도데이터를 1파일로 합치기 때문에 빈 영역을 갖는 클러스터의 발생을 억제할 수 있다. 이와 같이 상기 태양에서는 센터국이 작은 사이즈의 지도데이터를 송신할 수 있기 때문에 전송로가 폭주상태에 빠지기 어렵게 된다. 이것에 의해 전송로를 효율적으로 이용할 수 있는 지도제공 시스템을 실현할 수 있다.
「제 1 실시형태」
「시스템 구성」
도 1은 본 발명의 한 실시형태에 관련된 지도제공 시스템의 구성을 나타낸 블럭도이다. 도 1에 있어서, 본 지도제공 시스템에는 단말장치(1)와 센터국(2)이 수용된다. 단말장치(1)와 센터국(2)은 통신망(3)을 통해 쌍방향 통신가능하게 접속된다. 보다 구체적으로는 단말장치(1)와 센터국(2) 사이에는 업링크(UL)와 다운링크(DL)가 깔린다. 업링크(UL)는 단말장치(1)에서 센터국(2)으로의 통신로를 의미하고, 다운링크(DL)는 센터국(2)에서 단말장치(1)로의 통신로를 의미한다. 여기에서 통신망(3)의 전형예로서는 휴대전화로 대표되는 이동체 통신망,ISDN(Integrated Serveices Digital Network)으로 대표되는 공중회선 또는 전용회선이 있다. 또, 통신망(3)은 이동체 통신망, 공중회선 및 전용회선 내의 어느 2개 이상에 의해 구성되는 경우도 있다.
다음에 단말장치(1)의 구성에 대해 설명한다. 단말장치(1)는 전형적으로는 카 네비게이션 시스템에 의해 상당하고, 입력장치(11), 위치검출장치(12), 데이터 처리부(13), 요구생성부(14), 제 1 송수신부(15), 안테나(16), 패킷 분해부(17), 판독/기록제어부(18), 제 1 기억장치(19), 출력장치(110)를 구비한다.
입력장치(11)는 카 네비게이션 시스템을 원격으로 조작하는 리모트 컨트롤러 또는 카 네비게이션 시스템 본체에 배열된 키에 의해 하드웨어적으로 실현되거나, 카 네비게이션 시스템의 메뉴화면에 표시된 버튼에 의해 소프트웨어적으로 실현된다. 또한, 입력장치(11)는 음성인식기술을 구사하여 실현되는 경우도 있다. 단말장치(1)의 사용자는 이상의 입력장치(11)를 조작하여 단말장치(1)에 대해 표시된 지도의 스크롤 또는 축척변경, 경로탐색, 정보검색 또는 센터국(2)으로의 접속 등의 여러가지 처리의 요구를 실행한다. 또, 입력장치(11)는 특징적인 동작으로서 사용자가 필요로 하는 지도파일(CF)을 특정하기 위한 정보를 데이터 처리부(13)에 출력한다.
위치검출장치(12)는 속도센서, 자이로센서 또는 GPS(Global Positioning System)의 안테나 및 수신기에 의해 실현된다. 또, 위치검출장치(12)는 속도센서, 자이로센서 및 GPS(Global Positioning System)의 안테나 및 수신기의 어느 2개 이상의 조합에 의해 실현되는 경우도 있다. 위치검출장치(12)는 속도센서에 의해 단말장치(1)의 이동속도를 검출하고, 검출결과를 기초로 주행거리를 산출하거나, 자이로센서에 의해 단말장치(1)의 진행방향을 검출하거나, 안테나 및 수신기에 의해 인공위성으로부터의 전파를 수신하여 지구상에 있어서 단말장치(1)의 절대적인 위치를 검출하거나 한다. 이상의 검출결과를 기초로 위치검출장치(12)는 단말장치(1)의 현재위치를 검출한다.
데이터 처리부(13)는 후술하는 각종 데이터처리를 실행한다. 데이터 처리부(13)의 처리의 하나로 입력장치(11)에서 입력된 정보를 기초로 사용자가 필요로 하는 지도의 범위를 특정하는 좌표를 구하여 요구생성부(14)에 출력하는 처리가 있다.
요구생성부(14)는 좌표정보가 입력되면 사용자가 필요로 하는 지도파일(CF)의 송신을 센터국(2)에 요구하기 위한 제어 코맨드를 생성한다. 이후, 생성된 제어코맨드를 요구(REQ)로 부르기로 한다. 요구(REQ)는 미리 정해진 포맷을 갖고 있고, 요구생성부(14)에 입력된 좌표정보를 적어도 포함한다. 이상과 같은 요구(REQ)는 제 1 송수신부(15)에 출력된다.
제 1 송수신부(15)는 전형적으로는 휴대전화로 대표되는 이동체 통신장치에 의해 실현된다. 제 1 송수신부(15)는 입력된 요구(REQ)를 안테나(16)를 통해 업 링크(UL)에 송출한다.
요구(REQ)는 업 링크(UL)를 통해 센터국(2)에 의해 수신된다. 센터국(2)은 요구(REQ)를 해석하여 사용자가 필요로 하는 지도파일(CF)을 특정한다. 센터국(2)은 특정한 지도파일(CF)을 제 2 기억장치(24)로부터 추출하여 복수의 패킷(P)을 조립한다(어셈블리한다). 조립된 패킷(P)은 통신망(3)(다운링크(DL))을 통해 차례로 단말장치(1)에 송신된다. 또, 센터국(2)의 처리는 나중에 상세하게 설명된다. 단말장치(1)에 있어서 제 1 송수신부(15)는 또한 안테나(16)를 통해 패킷(P)을 수신하여 패킷 분해부(17)에 출력한다. 패킷 분해부(17)는 입력된 패킷(P)을 원래의 지도파일(CF)로 분해(디어셈블리)하여 데이터 처리부(13)에 출력한다.
데이터 처리부(13)는 지도파일(CF)이 입력되면, 미리 정해진 처리를 실행하여 소정의 조건을 만족하는 경우, 입력된 지도파일(CF)을 기초로 제 1 데이터베이스(111)를 작성하여 판독/기록제어부(18)에 출력한다. 판독/기록제어부(18)는 입력된 지도파일(CF)을 제 1 기억장치(19)에 그대로 기록하거나, 기존의 지도파일(CF)로 바꿔 쓰거나 한다. 또, 일련의 기록처리에 대해서는 나중에 설명한다.
제 1 기억장치(19)는 전형적으로는 하드디스크 드라이브 또는 플래시 메모리로 대표되는 데이터 바꿔 쓰기가 가능한 기억장치로 이루어진다. 제 1 기억장치(19)에는 제 1 데이터베이스(111)가 축적된다. 제 1 데이터베이스(111)는 본 단말장치(1)가 네비게이션 시스템으로서 기능하기 위해 필요한 적어도 하나의 지도파일(CF)로 구성되는 데이터의 집합체이다.
또, 출력장치(110)는 전형적으로는 디스플레이 및 스피커로 이루어진다. 디스플레이에는 지도파일(CF)에 의해 표시되는 지도가 현재위치와 함께 표시되거나, 데이터 처리부(13)에 의한 경로탐색처리의 결과 또는 경로안내처리의 결과가 표시되거나 한다. 스피커는 데이터 처리부(13)에 의한 경로안내처리의 결과가 음성에의해 사용자에게 제공된다.
그런데, 데이터 처리부(13)는 제 1 데이터베이스(111)를 구성하는 지도파일(CF)을 사용하여 여러가지 처리를 실행한다. 예를 들면 데이터 처리부(13)는 단말장치(1)의 현재위치의 표시처리를 실행한다. 이 경우, 데이터 처리부(13)는 위치검출장치(12)에 의해 검출된 현재위치주변의 지도가 필요하게 되기 때문에, 판독/기록제어부(18)와 협동하여 제 1 데이터베이스(111)에서 상기 지도를 나타내는 지도파일(CF)을 검색하여 추출한다. 데이터 처리부(13)는 추출된 지도파일(CF)을 사용하여 맵 매칭 등의 위치보정처리를 실행한다. 위치보정처리 후, 데이터 처리부(13)는 추출한 지도파일(CF)이 나타내는 지도상에 검출된 현재위치를 시각적으로 나타내는 포인터를 중합하여 출력장치(110)에 출력한다.
또, 데이터 처리부(13)는 단말장치(1)의 사용자가 입력장치(11)를 이용하여 경로탐색처리 등을 요구한 경우에는 출발지 및 목적지 부근의 지도를 나타내는 지도파일(CF) 및 탐색해야 하는 경로를 포함하는 지도를 나타내는 지도파일(CF)을 판독하여 경로탐색처리 등을 실행할 필요가 있다. 이 경우에도 데이터 처리부(13)는 판독/기록제어부(18)와 협동하여 제 1 데이터베이스(111)에서 경로탐색처리 등에 필요한 지도파일(CF)을 검색하여 추출한다. 또, 일련의 지도파일(CF)의 판독처리에 대해서는 나중에 설명한다.
다음에 센터국(2)의 구성에 대해 설명한다. 센터국(2)은 제 2 송수신부(21), 수신요구 해석부(22), 판독제어부(23), 제 2 기억장치(24), 패킷 조립부(25)를 구비한다.
상기한 바와 같이 센터국(2)에는 단말장치(1)에 의해 생성된 요구(REQ)가 통신망(3)(업링크(UL))을 통해서 송신되어 온다. 제 2 송수신부(21)는 전형적으로는 모뎀, 터미널 어댑터 또는 게이트웨이로 대표되는 통신장치로 이루어진다. 여기에서 게이트웨이란 다른 통신 프로토콜이 사용되는 통신망(3)으로 센터국(2)을 접속하기 위한 장치 또는 기능을 의미하는 것만이 아니라, 다른 국이 상기 센터국(2)에 부정 액세스하는 것을 방지하기 위한 장치 또는 기능을 의미한다. 제 2 송수신부(21)는 통신망(3)과 접속되어 있고, 단말장치(1)로부터의 데이터수신 및 단말장치(1)로의 데이터 송신을 제어한다. 보다 구체적으로는 제 2 송수신부(21)는 그 하나의 기능으로서 업링크(UL)를 통해 송신되어 온 요구(REQ)를 수신하여 수신요구 해석부(22)에 출력한다.
수신요구 해석부(22)는 입력된 요구(REQ)를 해석하여 해석결과를 판독 제어부(23)에 출력한다. 판독 제어부(23)는 입력된 해석결과를 기초로 단말장치(1)가 필요로 하는 지도파일(CF)을 제 2 기억장치(24)로부터 판독한다. 여기에서 제 2 기억장치(24)는 전형적으로는 하드디스크 드라이브, CD-ROM 드라이브 또는 DVD-ROM 드라이브로 구성되어 있고, 적어도 축적된 데이터의 판독이 가능한 기록매체와 그 드라이버로 이루어진다. 제 2 기억장치(24)는 제 2 데이터베이스(25)를 저장한다. 제 2 데이터베이스(25)는 센터국(2)이 본 단말장치(1)에 지도를 제공하는 국으로서 기능하기 위해 필요한 적어도 하나의 지도파일(CF)로 구성되는 데이터의 집합체이다. 즉, 지도파일(CF)은 단말장치(1)에 제공가능한 지도를 표현한 디지털 데이터를 의미한다. 단말장치(1)측의 제 1 데이터베이스(111)는 센터국(2)에 의해 제공되는 지도파일(CF)로부터 작성된다. 여기에서 판독제어부(23)가 판독한 것은 지도파일(CF)의 전부인 경우도 있지만, 상기 지도파일(CF)의 일부인 경우도 있다. 판독제어부(23)는 판독한 지도파일(CF)을 패킷 조립부(25)에 출력한다. 패킷 조립부(25)는 입력된 지도파일(CF)을 기초로 패킷(P)을 조립하여(어셈블리하여) 제 2 송수신부(21)에 출력한다. 제 2 송수신부(21)는 입력된 패킷(P)을 다운 링크(DL)를 통해 단말장치(1)에 송신한다.
이상, 본 실시형태에 관련된 지도제공 시스템의 전체 구성, 단말장치(1) 및 센터국(2)의 구성에 대해 설명했다. 다음에 상기의 지도파일(CF)의 계층구조 및 파일명에 대해 상세하게 설명한다.
「계층구조 및 파일명」
도 2는 본 실시형태에 관련된 지도파일(CF)에 의해 표현되는 지도의 계층구조를 설명하기 위한 도면이다. 도 2에 나타낸 바와 같이, 우선 서로 축척이 다른 복수 종류의 지도가 준비된다. 본 실시형태에서는 편의상 4단계 축척의 지도가 준비된다고 가정한다. 이후의 설명에서는 최대축척을 레벨「0」, 2번째로 큰 축척을 레벨「1」, 3번째로 큰 축척을 레벨「2」, 최소축척을 레벨「3」으로 한다. 이상에서 알 수 있는 바와 같이, 지도 데이터는 최대축척을 레벨「0」으로 하고, 레벨「0」~「3」의 4계층으로 구성된다. 또, 레벨이 높은 것을 상위계층의 지도로 하고, 레벨이 낮은 것을 하위계층의 지도로 한다. 따라서, 도 2에 나타낸 바와 같이 상위계층의 지도일수록 광역이고 상세도(詳細度)가 낮다. 반대로 하위계층의 지도일수록 협역이고 상세도가 높다. 또, 각 계층의 지도는 경도방향 및 위도방향을따라 등간격으로 구획된다.
여기에서 도 3은 최상위계층(레벨「3」)의 유닛을 설명하기 위한 도면이다. 도 3의 세계지도는 위도 0도를 기준으로 하여 상기 위도방향을 따라 5도20분마다 구획된다. 또, 이 세계지도는 경도 0도를 기준으로 하여 상기 경도방향을 따라 약 8도마다 구획된다. 그 결과, 세계지도는 약 640km 사방의 장방형 영역에 분할된다. 최상위계층(레벨「3」)에 있어서는 약 640km 사방의 장방형 영역을 유닛으로 한다. 레벨「3」에 있어서는 이러한 약 640km 사방의 유닛이 디지털 데이터화됨으로써 하나의 지도파일(CF)이 작성된다. 이상과 같이 최상위계층(레벨「3」)의 유닛을 대표하여 유닛(U3)(해칭을 그은 부분)에 대해 설명한다. 최상위계층(레벨「3」)의 유닛(U3)은 일본의 관서권을 포함하는 유닛이고, 위도 0도, 경도 0도의 위치를 원점으로 하여 동경방향으로 세어 16번째, 북위방향으로 세어 6번째에 위치한다(단, 원점을 포함하는 유닛은 0번째로 센다). 이상의 유닛(U3)이 도 2의 최상단에 나타나 있다.
도 2에 나타낸 바와 같이 유닛(U3)의 지도는 하나의 정점을 기준으로 하여 점선으로 나타낸 바와 같이 위도방향을 따라 40분마다 구획된다. 또, 유닛(U3)의 지도는 상기와 동일한 정점을 기준으로 하여 점선으로 나타낸 바와 같이 상기 경도방향을 따라 1도마다 구획된다. 그 결과, 유닛(U3)의 지도는 약 80km 사방의 장방형 영역으로 64분할된다. 약 80km 사방의 각 장방형 영역을 상세하게 나타낸 지도가 1계층 아래(즉, 레벨「2」의 계층)에 있어서 하나의 유닛으로 된다. 레벨「2」의 계층의 유닛을 대표하여 유닛(U2)(해칭을 그은 부분)에 대해 설명한다. 이러한 유닛(U2)은 유닛(U3) 내의 하나의 정점(편의상, 왼쪽 아래의 정점으로 한다)의 위치를 원점으로 하여 동경방향으로 세어 4번째, 북위방향으로 세어 1번째에 위치한다(단, 원점을 포함하는 유닛(U)은 0번째로 센다). 레벨「2」의 계층의 유닛(U2)이 도 2의 2단째에 나타나 있다.
마찬가지로 유닛(U2)의 지도는 하나의 정점을 기준으로 하여 위도방향을 따라 5분마다, 또 경도방향을 따라 7분30초마다 구획되고, 그 결과 약 10km 사방의 장방형 영역으로 64분할된다. 약 10km 사방의 각 장방형 영역을 상세하게 나타낸 지도가 1계층 아래(즉, 레벨「1」의 계층)에 있어서 하나의 유닛으로 된다. 그 안의 하나인 유닛(U1)(해칭을 그은 부분)은 유닛(U2)의 왼쪽 아래의 정점을 원점으로 하여 동경방향으로 세어 5번째, 북위방향으로 세어 3번째에 위치한다(단, 원점을 포함하는 유닛은 0번째로 센다). 레벨「1」의 유닛(U1)이 도 2의 위에서 3단째에 나타나 있다.
마찬가지로 유닛(U1)의 지도는 약 1.2km 마다 사방의 장방형 영역으로 64분할된다. 약 1.2km 사방을 상세하게 나타낸 각 지도가 1계층 아래(즉, 레벨「0」의 계층)에 있어서 하나의 유닛(U)으로 된다. 그 안의 하나인 유닛(U0)(해칭을 그은 부분)은 유닛(U1)의 왼쪽 아래의 정점을 원점으로 하여 동경방향으로 2번째, 북위방향으로 1번째에 위치한다(단, 원점을 포함하는 유닛은 0번째로 센다). 레벨「0」의 유닛(U0)이 도 2의 위에서 4단째에 나타나 있다.
도 4는 레벨「3」~「0」의 각각의 계층간에 있어서 유닛(U)의 부자관계를 설명하기 위한 도면이다. 우선, 이하의 설명에 있어서 자유닛(CU)은 어느 하나의 유닛(U)이 커버하는 범위에 포함되는 하위계층의 모든 유닛을 의미한다. 바꿔 말하면 자유닛(CU)은 상위계층의 어느 하나의 유닛(U)이 나타내는 지도의 일부분을 나타내는 유닛(U)의 집합이다. 반대로 부유닛(PU)은 어느 유닛(U)이 커버하는 범위를 포함하는 상위계층의 모든 유닛을 의미한다. 바꿔 말하면 부유닛(PU)은 하위계층의 어느 하나의 유닛(U)이 나타내는 지도를 자신이 나타내는 지도의 일부로서 포함하고 있는 유닛(U)의 집합이다.
여기에서 도 4 중의 유닛(U3)은 도 2에 나타낸 유닛(U3)에 상당하고, 레벨「3」의 유닛의 하나이다. 유닛(U3)을 부유닛(PU3)으로 하는 레벨「2」의 유닛(U), 즉 유닛(U3)의 자유닛(CU) 내, 레벨「2」에 속하는 것은 유닛(U3)을 경도 및 위도방향으로 각각 8등분할 수 있는 64개의 유닛(U)으로 된다.
이와 같이 부유닛(PU)에 대해서는 1계층 아래에 64개의 자유닛(CU)이 생긴다. 각 자유닛(CU)에는 위치코드가 할당된다. 위치코드란 자유닛(CU)이 나타내는 지도가 부유닛(PU)의 어느 부분에 상당하는지를 특정하기 위한 정보이다. 바꿔 말하면 위치코드란 부유닛(PU)을 기준으로 한 자유닛(CU)의 위치를 특정하기 위한 정보이다.
지금, 부유닛(PU)이 도 4 유닛(U3)이라고 한다. 이러한 경우, 유닛(U3)의 왼쪽 아래 구석의 지도를 상세하게 나타내는 자유닛(CU)에는 위치코드로서 「0000」이 할당된다. 이 위치코드「0000」을 기준값으로 하여 자유닛(CU)(위치코드「0000」)에 대해 동경방향을 따라 인접하는 자유닛(CU)에는 「0100」이 할당된다. 이하 마찬가지로 자유닛(CU)이 동경방향으로 하나 이동할 때마다 위치코드는 「0100」만큼 증가한다. 또, 위치코드「0000」를 기준값으로 하여 자유닛(CU)(위치코드「0000」)에 대해 북위방향을 따라 인접하는 자유닛(CU)에는 「0001」이 할당된다. 이하 마찬가지로 자유닛(CU)이 북위방향으로 하나 이동할 때마다 위치코드는 「0001」만큼 증가한다.
이상과 같이 할당되는 위치코드를 따르면 유닛(U3)의 자유닛(CU)의 하나인 유닛(U2)의 위치코드는 「0401」이다.
다음에 부유닛(PU)이 유닛(U2)이라고 가정한다. 이 유닛(U2)에 대해서도 1계층 아래(레벨「1」)에는 64개의 자유닛(CU)이 생긴다. 레벨「1」의 64개의 자유닛(CU)에 대해서도 도 4에 나타낸 바와 같이 상기한 바와 같은 방법으로 위치코드가 할당된다. 예를 들면, 유닛(U2)의 자유닛(CU)의 하나인 유닛(U1)의 위치코드는 「0503」이다.
또, 부유닛(PU)으로서의 유닛(U1)에 대해서도 1계층 아래(레벨「0」)에는 64개의 자유닛(CU)이 생긴다. 레벨「0」의 각 자유닛(CU)에 대해서도 도 4에 나타낸 바와 같이 마찬가지로 위치코드가 할당된다. 예를 들면 유닛(U1)의 자유닛(CU)의 하나인 유닛(U0)의 위치코드는 「0201」이다.
이상과 같이 본 실시형태에 관련된 위치코드에서는 동경방향으로의 값의 증분 및 북위방향으로의 값의 증분이 미리 정해져 있다. 그 때문에, 자유닛(CU)끼리의 인접관계를 간단하게 파악할 수 있다.
그런데, 도 1에 나타낸 단말장치(1) 및 센터국(2)에는 각각 파일 시스템이 탑재된다. 단말장치(1)측의 파일 시스템은 데이터 처리부(13) 및 판독/기록제어부(18)에 의해 구성된다. 단말장치(1)측의 파일시스템은 제 1 기억장치(19) 내의 제 1 데이터베이스(111)를 용이하게 관리하기 위해, 제 1 기억장치(19)가 갖는 기록영역을 「디렉토리」라 부르는 몇 개의 논리영역으로 분할한다. 또, 단말장치(1)측의 파일 시스템은 제 1 데이터베이스(111)를 구성하는 지도파일(CF)의 부자관계 및 인접관계를 트리구조에 기초하는 디렉토리명 및 파일명에 의해 나타낸다.
또, 센터국(2)측의 파일 시스템은 수신요구 해석부(22) 및 판독제어부(23)에 의해 구성된다. 센터국(2)측의 파일 시스템은 제 2 기억장치(24) 내의 제 2 데이터베이스(25)의 기억영역을 「디렉토리」(논리영역)로 분할하고, 또 제 2 데이터베이스(25)를 구성하는 지도파일(CF)의 부자관계 및 인접관계를 트리구조에 기초하는 디렉토리명 및 파일명에 의해 나타낸다.
이하, 도 5는 도 2~도 4에 나타낸 지도파일(CF)을 관리하기 위한 트리구조를 나타내는 도면이다. 상기한 바와 같이 각 파일시스템의 각 디렉토리는 도 5에 나타낸 바와 같은 트리구조를 취하고, 「¥」마크에 의해 나타낸다. 「¥」마크는 디렉토리를 식별하기 위한 식별자이다. 또, 최상부의 디렉토리는 루트로 부르고, 「¥MAP」으로 나타낸다. 루트 디렉토리「¥MAP」의 아래 디렉토리에는 지도파일(CF) 그 자체 또는 서브 디렉토리를 저장할 수 있다. 여기에서 파일 시스템은 필요한 지도파일(CF)을 지정할 때, 파일명 앞에 루트「¥MAP」에서 상기 지도파일(CF)이 존재하는 디렉토리까지 개재하는 디렉토리명을 「패스」로서 기술할 필요가 있다. 따라서, 2개의 「¥」마크에 끼워진 문자열이 디렉토리명을 나타내게 된다. 서브 디렉토리명의 머리문자는 「D」로 정의된다. 또, 파일명의 머리문자는 「M」으로 정의된다. 또, 파일명의 확장자는 「.map」으로 정의된다.
이제, 다음에 본 실시형태의 하나의 특징인 디렉토리명 및 파일명을 할당하는 방법을 설명한다. 우선, 원칙적으로 최상위계층의 각 유닛이 커버하는 지도를 나타내는 지도파일(CF)은 소정의 규칙에 따라 파일명이 붙여지고, 루트(「¥map」)의 바로 아래 디렉토리(논리영역)에 저장된다. 예를 들면, 도 3에 나타낸 유닛(U3)은 최상위 계층(레벨「3」)에 속하고, 원점(위도 0도, 경도 0도)을 기준으로 하여 동경방향으로 세어 16번째, 북위방향으로 6번째(단, 원점을 포함하는 유닛은 각각 0번째로 센다)의 유닛에 해당한다. 그 때문에, 유닛(U3)에는 파일명의 머리문자 및확장자를 포함하여 「M1606.map」이라는 이름이 붙여진다. 또, 최상위계층의 유닛(U3)은 루트(「¥map」)의 바로 아래에 저장되기 때문에, 패스는 「¥MAP¥M1606.map」이 된다.
이상의 유닛(U3)의 파일명에서 알 수 있는 바와 같이, 파일명의 머리문자 및 확장자 사이에는 4자릿수의 숫자가 나열된다. 상위 2자릿수의 숫자는 유닛(U)이 원점에서 동경방향으로 세어 몇 번째에 위치하는지를 규정한다. 또, 하위 2자릿수의 숫자는 유닛(U)이 원점에서 북위방향으로 세어 몇 번째에 위치하는지를 규정한다. 이와 같이, 파일명은 유닛(U)의 위치를 규정한다. 또, 유닛(U3)의 패스에서 알 수 있는 바와 같이, 루트(「¥map」)에서 파일명에 이르기까지는 서브 디렉토리가 개재되지 않는다. 이와 같이 서브 디렉토리의 갯수는 유닛(U)이 어느 계층에 속하고 있는지를 규정한다. 유닛(U3)의 경우에는 루트와 파일명과의 사이에 개재하는 서브 디렉토리의 갯수가 「0」인 것에 의해 유닛(U3)(M1606.map)이 최상위계층에 속하는 것을 알 수 있다.
이상의 규칙에 따르면 다른 최상위계층의 유닛(U)을 위한 패스는 「¥MAP¥M0000.map」, 「¥MAP¥M0001.map」, …「¥MAP¥M1606.map」…등과 같이 나타낸다.
또, 최상위계층의 유닛(U)을 부유닛(PU)으로 하는 유닛의 그룹을 저장하기 위한 서브 디렉토리가 루트의 바로 아래에 작성된다. 예를 들면 유닛(U3)을 부유닛(PU)으로 하는 유닛(U)의 그룹을 저장하기 위해 「¥D1606」으로 이름 붙인 서브 디렉토리가 루트의 바로 아래에 작성된다. 이상의 서브 디렉토리명에서 알 수 있는 바와 같이 서브 디렉토리명의 머리문자에는 4자릿수의 숫자가 이어진다. 이 4자릿수의 숫자는 파일명인 경우와 같이 부유닛(PU)이 원점에서 동경방향 및 북위방향으로 세어 각각 몇 번째에 위치하는지를 나타낸다. 그 때문에 루트(「¥MAP」)의 바로 아래에는 「¥D0000」, 「¥D0001」,…,「¥D1606」,…이 작성된다.
다음에 레벨「2」의 계층에 속하는 각 유닛(U)은 위치코드에 기초한 파일명이 붙여지고, 자신의 부유닛(PU)을 나타내는 서브 디렉토리의 바로 아래 디렉토리(논리영역)에 저장된다. 예를 들면 유닛(U3)을 부유닛(PU)으로 하는 레벨「2」의 유닛(U)은 도 4 등을 참조하면 64개 있다. 그 안의 하나인 유닛(U2)은 위치코드가 「0401」이기 때문에, 파일명의 머리문자 및 확장자를 포함하여 「M0401.map」이라는 이름이 붙여진다. 또, 레벨「2」의 유닛(U2)은 유닛(U3)(부유닛(PU))의 서브 디렉토리(「¥map¥D1606」)의 바로 아래에 저장되기 때문에, 패스는 「¥MAP¥D1606¥M0401.map」이 된다.
이상의 유닛(U2)의 파일명에서 알 수 있는 바와 같이, 레벨「2」의 유닛(U)의 파일명의 머리문자 및 확장자 사이에는 상기한 위치코드가 나열된다. 그 때문에 레벨「2」의 유닛(U)의 파일명도 또한 상기 유닛(U)의 위치를 규정하게 된다. 또, 유닛(U2)의 패스에서 알 수 있는 바와 같이, 루트(「¥map」)에서 파일명에 이르기까지는 서브 디렉토리가 하나만 개재한다. 서브 디렉토리의 갯수는 유닛(U)이 어느 계층에 속하고 있는지를 규정한다. 유닛(U2)의 경우에는 루트와 파일명 사이에 개재하는 서브 디렉토리의 갯수가 「1」인 것에 의해 상기 유닛(U2)(M0401.map)이 레벨「2」의 계층에 속하는 것을 알 수 있다.
이상의 규칙에 따르면 다른 레벨「2」의 패스는 「¥MAP¥D0000¥M0000.map」,「¥MAP¥D0000¥M0001.map」,…,「¥MAP¥D0000¥M0007.map」,「¥MAP¥D0000¥M0100.map」,…「¥MAP¥D0000¥M0707.map」,「¥MAP¥D0001¥M0000.map」,…「¥MAP¥D1606¥M0001.map」,…「¥MAP¥D1606¥M0401.map」,…「¥MAP¥D1606¥M0707.map」,…등과 같이 나타낸다.
마찬가지로 레벨「2」의 유닛(U2)을 부유닛(PU)으로 하는 유닛의 그룹은 서브 디렉토리「¥D0401」아래의 디렉토리(논리영역)의 아래에 저장되게 된다. 예를 들면 유닛(U1)은 유닛(U2)의 자유닛(CU)의 하나로서, 상기 유닛(U2)이 64 분할된 유닛(U) 내에서 위치코드「0503」에 해당하는 유닛이다. 그 때문에, 유닛(U1)을 위한 패스는 「¥MAP¥D1606¥D0401¥M0503.map」으로 나타낸다. 마찬가지로 유닛(U2)을 부유닛(PU)으로 하는 레벨「1」의 각 유닛의 패스는 「¥MAP¥D1606¥D0401¥M0000.map」,「¥MAP¥D1606¥D0401¥M0001.map」,…,「¥MAP¥D1606¥D0401¥M0707.map」으로 나타낸다.
또, 유닛(U1)을 부유닛(PU)으로 하는 유닛(U)의 그룹은 「¥MAP¥D1606¥D0401¥M0503.map」으로 나타내는 서브 디렉토리의 바로 아래 디렉토리(논리영역)에 저장된다. 이러한 그룹에 속하는 유닛(U0)은 유닛(U1)이 64 분할된 유닛(U) 내에서 위치코드「0201」에 해당하는 유닛이다. 그 때문에 유닛(U0)의 패스는 「¥MAP¥D1606¥D0401¥D0503¥M0201.map」으로 나타낸다. 마찬가지로 유닛(U1)을 부유닛(PU)으로 하는 레벨「0」의 각 유닛의 패스는 「¥MAP¥D1606¥D0401¥D0503¥M0000.map」,「¥MAP¥D1606¥D0401¥D0503¥M0001.map」,…「¥MAP¥D1606¥D0401¥D0503¥M0707.map」으로 나타낸다.
이상, 지도파일(CF)에 의해 실현되는 계층구조 및 파일명에 대해 설명했다. 여기에서 이상의 유닛(U)이 디지털 데이터화되어 필요한 관리정보가 부가됨으로써하나의 지도파일(CF)이 구성된다(상세하게는 도 7을 참조). 이하의 설명에 있어서 유닛 데이터는 유닛(U)을 디지털 데이터화한 것을 의미한다. 즉, 하나의 지도파일(CF)에는 하나의 유닛 데이터가 포함된다. 다음에 지도파일(CF)의 데이터구조에 대해 상세하게 설명한다.
「지도파일(CF)의 데이터구조」
도 6은 하나의 지도파일(CF)을 기초로 그려진 지도를 설명하기 위한 도면이다. 또, 도 7은 하나의 지도파일(CF)의 데이터구조를 나타내고 있다. 도 7에 있어서, 지도파일(CF)은 대략적으로 유닛 헤더와 유닛 데이터로 구성된다. 우선, 유닛 데이터부터 설명한다. 일반적으로 지도는 용도에 따라 도 7에 나타낸 바와 같이 배경, 도로, 지도기호 및 문자로 구성된다. 그러나, 지도파일(CF)은 주로 단말장치(1)의 디스플레이 상으로의 표시, 맵 매칭 또는 경로탐색처리에 사용된다. 예를 들면 경로탐색처리는 도로의 이어짐이 나뉘면 좋고 배경의 필요성은 엷다. 그래서 하나의 유닛 데이터는 도 6에 나타낸 바와 같이 문자기호 데이터, 도로네트워크 데이터, 배경 데이터로 나뉘어 데이터화된다. 이것에 의해 문자기호 데이터, 도로 네트워크 데이터 및 배경데이터는 각각 독립적으로 사용할 수 있다. 문자기호 데이터란 유닛(U)이 커버하는 지도에 기재되어야 하는 문자열(지명 및 교차점 명칭 등)로 이루어진 데이터와, 상기 지도에 기재되어야 하는 지도기호로 이루어진 데이터를 의미한다. 도로 네트워크 데이터란 유닛(U)이 커버하는 지도에 나타내야 할 도로 그 자체 및 도로끼리의 이어짐을 나타내는 도형 데이터를 의미한다. 배경 데이터란 수계, 산계, 건조물 등, 유닛(U)이 커버하는 지도에 나타내어야 할 배경을 나타내는 도형 데이터를 의미한다. 배경의 예로서는 하천, 호수, 산, 녹지대, 철도, 건조물, 다리, 공원이 있다. 이상의 문자기호 데이터, 도로 네트워크 데이터 및 배경 데이터를 서로 겹쳐 표시함으로써 도 6에 나타낸 바와 같이 유닛 데이터는 배경, 도로, 지도기호 및 문자를 나타낼 수 있다.
다음에 배경데이터의 상세한 데이터 구조를 도 7 및 도 8을 참조하여 설명한다. 도 7에 나타낸 바와 같이 배경데이터는 기본배경 테이블 및 상세배경 테이블로 구성된다. 기본배경 테이블은 도 8의 (a)에서 알 수 있는 바와 같이 하천, 철도 및 녹지대 등, 지도의 배경을 표시할 때에 개략이 되는 도형 데이터의 집합이다. 한편, 상세배경 테이블은 도 8의 (b)에서 알 수 있는 바와 같이, 다리 및 건조물 등, 지도의 배경을 보다 상세하게 표시하기 위한 도형 데이터의 집합이다.이러한 기본배경 테이블 및 상세배경 테이블은 도 7에서 알 수 있는 바와 같이 유닛 데이터에 있어서 서로 별개로 기록된다. 또, 기본배경 테이블 및 상세배경 테이블에는 상호 참조하는 정보는 기록되지 않는다. 즉, 기본배경 테이블을 구성하는 배경 데이터를 그릴 때에 상세배경 테이블의 배경데이터는 어느 하나 참조되지 않는다. 반대로 상세배경 테이블을 구성하는 배경데이터를 그릴 때에 기본배경 테이블의 배경 데이터는 어느 하나 참조되지 않는다. 이와 같이 기본배경 테이블 및 상세배경 테이블은 상호 독립된 데이터 구조를 갖는다. 따라서, 배경을 디스플레이 상에 표시하는 경우에는 도 8의 (a)에 나타낸 바와 같이, 기본배경 테이블만으로 나타내는 배경을 표시하는 것이 가능하게 된다. 이것에 의해 단말장치(1)의 사용자는 개략적인 지도를 보는 것이 가능하게 된다. 또, 도 8의 (c)에 나타낸 바와 같이 기본배경 테이블 및 상세배경 테이블로 나타내는 배경을 표시할 수도 있다. 이 경우, 소정의 원점을 기준으로 하여 기본배경 테이블에서 얻을 수 있는 개략적인 배경 상에 상세배경 테이블에서 얻을 수 있는 상세한 배경을 서로 겹치게 된다. 이것에 의해 단말장치(1)의 사용자는 상세한 지도를 보는 것이 가능하게 된다. 또, 본 실시형태에서는 배경 데이터는 기본배경 테이블 및 상세배경 테이블로 구성된다고 설명했는데, 제 1 기억장치(19) 또는 제 2 기억장치(24)에 기억용량의 제한이 있는 경우 등에는 제 1 데이터베이스(111) 또는 제 2 데이터베이스(25)를 작은 사이즈로 하는 관점에서 배경 데이터는 기본배경 테이블로만 구성되어도 좋다. 반대로 본 실시형태에서 설명한 바와 같이, 배경 데이터는 기본배경 테이블 및 상세배경 테이블로 구성되는 경우에는 센터국(2)은 상세한 지도를 단말장치(1)에 제공하는 것이 가능하게 되고, 상기 단말장치(1)는 상세한 지도를 디스플레이에 표시할 수 있게 된다.
상기한 기본배경 테이블 및 상세배경 테이블의 내부 데이터구조는 서로 같다. 이하에는 기본배경 테이블 및 상세배경 테이블을 배경테이블로 총칭하여 쌍방의 데이터구조에 대해 보다 상세하게 설명한다.
상기한 바와 같이 배경 테이블은 지도의 배경을 디스플레이 상에 묘화하기 위해 사용되는 도형 데이터의 집합이다. 각 도형 데이터에 의해 하천, 공원, 공장 및 철도 등이 디스플레이 상에 묘화된다. 이하, 이러한 지도의 배경의 요소가 되는 하천, 공원, 공장 및 철도 등을 총칭하여 「묘화 오브젝트」로 부르기로 한다. 여기에서 도 9는 묘화 오브젝트의 개념을 나타내는 도면이다. 상기에서 알 수 있는 바와 같이 묘화 오브젝트는 공원 또는 공장 등과 같이 그 자체로 의미가 있는 하나의 대상물을 나타내고, 데이터 구조로서는 대상물을 절선으로 묘화하기 위한 요소점의 나열로 구성된다. 예를 들면 도 9에는 장방형 영역의 유닛(U)이 나타나 있다. 유닛(U)이 커버하는 범위에는 2개의 묘화 오브젝트(DO1 및 DO2)가 존재한다. 묘화 오브젝트(DO1)는 오브젝트(OBJ1과 O2)로 구성된다. 오브젝트(OBJ1)는 요소점(a)→요소점(b)→요소점(c)→요소점(d)→요소점(e)→요소점(a)의 순서로 한번에 쓴 때에 작성되는 절선으로 둘러싸인 영역이다. 또, 오브젝트(OBJ2)는 요소점(f)→요소점(g)→요소점(h)→요소점(i)→요소점(f)의 순번으로 한번에 쓴 때에 그려진 꺾은 선으로 둘러싸인 영역이다. 또, 묘화 오브젝트(DO2)는 오브젝트(OBJ3)로 구성된다. 오브젝트(OBJ3)는 요소점(j)→요소점(k)→요소점(l)→요소점(m)→요소점(n)→요소점(j)의 순번으로 한번에 쓴 때에 그려진 절선으로 둘러싸인 영역이다. 이상에서 알 수 있는 바와 같이, 본 실시형태의 묘화 오브젝트는 복수의 요소점을 한번에 써서 얻을 수 있는 하나 이상의 오브젝트에 의해 나타난다.
여기에서 도 10은 배경 테이블, 즉 기본배경 테이블 또는 상세배경 테이블의 상세한 데이터구조를 나타낸 도면이다. 도 10에 있어서 배경 테이블에는 배경 레코드수(M)와, M개의 배경 레코드(BR1~BRM)로 구성된다. 여기에서 M은 1 이상의 자연수이다. 배경 레코드수(M)는 배경 테이블에 포함되는 배경 레코드(BR1~BRM)의 갯수를 나타내는 정보이다. 또, 배경 레코드(BR1)는 배경속성과, 오브젝트수(N), 오브젝트(OBJ1~ON)의 요소점수(N1~NN), 오브젝트 레코드(OR1~ORN)로 구성된다.
배경속성은 배경 레코드(BR1) 내에 포함되는 각 오브젝트(OBJ)에 의해 나타나는 배경의 속성을 나타내는 정보이다. 보다 구체적으로는 배경속성은 배경 레코드(BR1) 내에 포함되는 각 오브젝트(OBJ)의 칼라코드 및 텍스처 매핑 코드이다. 여기에서 본 실시형태의 한 특징으로서 배경속성에는 하나의 칼라코드 또는 텍스처 매핑 코드만이 기술된다. 즉, 예를 들면 「청」을 나타내는 칼라코드와, 「적」을 나타내는 칼라코드가 함께 배경속성에 기술되는 일은 없다. 「청」을 나타내는 칼라코드만 또는 「적」을 나타내는 칼라코드만이 배경속성에 기술된다.
또, 오브젝트수(N)는 배경레코드(BR1) 내에 포함되는 오브젝트(OBJ)의 수를 나타내는 정보이다. 또, 요소점수(N1)는 오브젝트(OBJ1)를 구성하는 요소점수를 나타내고 있다. 요소점수(N2)는 오브젝트(OBJ2)를 구성하는 요소점수를 나타내고있다. 이후, 마찬가지로 요소점수(NN)는 오브젝트(OBJN)의 요소점수를 나타낸다. 이와 같이 배경레코드(BR1)에는 그곳에 포함되는 N개의 오브젝트(O)를 구성하는 요소점수가 나열된다. 여기에서 N은 1 이상의 자연수이다.
또, 오브젝트 레코드(OR1)는 하나의 오브젝트(OBJ1)를 구성하는 요소점의 좌표를 나타내는 정보이다. 여기에서 주의를 요하는 것은 오브젝트(OBJ1)는 복수의 요소점을 포함하기 때문에, 오브젝트 레코드(OR1)에는 복수의 좌표정보가 나열된다. 즉, 오브젝트 레코드(OR1)에는 좌표열의 정보가 기술된다. 여기에서 상기에서 알 수 있는 바와 같이, 오브젝트 레코드(OR1)에는 요소점수(N1)에 상당하는 갯수의 좌표정보가 기술된다. 또, 오브젝트 레코드(OR2)는 오브젝트(OBJ2)를 구성하는 요소점의 좌표열을 나타내는 정보이다. 오브젝트 레코드(OR2)에는 요소점수(N2)에 상당하는 갯수의 좌표정보가 기술된다. 이후, 마찬가지로 오브젝트 레코드(ORN)는 오브젝트(OBJN)를 구성하는 NN개의 요소점의 좌표열을 나타내는 정보이다. 오브젝트 레코드(ORN)에는 요소점수(NN)에 상당하는 갯수의 좌표정보가 기술된다.
이상과 같이, 각 오브젝트 레코드(OR)에는 오브젝트(OBJ)를 구성하는 요소점의 좌표열이 기술된다. 좌표열의 표현방법으로서는 유닛(U) 내에서의 절대좌표로 표현하는 방법과, 어느 요소점의 좌표와 직전의 요소점의 좌표의 차분을 이용한 상대좌표로 표현하는 방법이 있다. 절대좌표는 유닛(U) 내의 소정의 원점을 기준으로 한 각 요소점의 좌표이기 때문에, 많은 비트수를 필요로 한다. 그 때문에, 좌표열의 표현방법으로서 상대좌표가 사용되는 것이 지도파일(CF)의 데이터 사이즈를소형화하는 관점에서 바람직하다. 이하, 절대좌표와 상대좌표에 대해 상세하게 설명한다.
도 11은 절대좌표가 많은 비트수를 필요로 하는 것을 설명하기 위한 도면이다. 도 11에는 8개의 요소점(P0~P7)으로 구성되는 도형 데이터가 나타나 있다. 요소점(P0)의 절대좌표는 미리 정해진 원점을 기준으로 하여 (X0, Y0)이다. 이후, 마찬가지로 요소점(P1~P7)의 절대좌표는 (X1, Y1)~(X7, Y7)이다. 또, 도 12는 이상의 P0~P7의 각 절대좌표정보를 오브젝트 레코드(OR)에 기술한 때의 도면이다. 지금 요소점(P0~P7)의 절대좌표는 동경방향(x축방향) 및 북위방향(y축방향) 각각에 대해 예를 들면 2바이트로 표현하면, P0~P7의 각 절대좌표정보를 오브젝트 레코드(OR)에 기술하기 위해서는 32바이트가 필요하게 된다.
한편, 도 13은 도 11과 동일한 도형 데이터의 각 요소점(P0~P7)을 상대좌표로 표현한 때의 도면이다. 도 13에 있어서 도형 데이터는 요소점(P0→P1→P2→P3→P4→P5→P6→P7)의 순번으로 한번에 쓰여진다. 상대좌표 표현에 있어서도, 한번에 쓰여지는 최초의 요소점(P0)은 절대좌표 표현과 마찬가지로 소정의 원점을 기준으로 하여 (X0, Y0)으로 표현된다. 단, 다음 요소점(P1)은 절대좌표 표현인 경우에는 (X1, Y1)으로 표현된다. 그러나, 상대좌표 표현에서는 요소점(P1)은 (△X1, △Y1)으로 표현된다. 여기에서 △X1은 △X1=X1-X0이다. 또, △Y1은 △Y1=△Y1-Y0이다. 이후의 요소점(P2~P7)도 각각의 요소점의 절대좌표와 직전의 요소점의 절대좌표의 차분에 의해 표현된다.
도 14는 이상의 요소점(P0~P7)의 각 상대좌표정보를 오브젝트 레코드(OR)에기술한 때의 데이터 구조를 나타낸 도면이다. 여기에서 주의를 요하는 것은 상대좌표 표현은 각각의 요소점의 절대좌표와 직전의 요소점의 절대좌표의 차분으로 나타내기 때문에, △X1<<X1, △X2<<X2, …△X7<<X7이 된다. 마찬가지로 △Y1<<Y1, △Y2<<Y2, …△Y7<<Y7이 된다. 그 때문에, 요소점(P1~P7)의 상대좌표는 동경방향(x축방향) 및 북위방향(y축방향) 각각에 대해 2바이트로 표현하는 것이 아니라, 각각 1바이트로 표현한다. 그 결과, 요소점(P1~P7)의 각 상대좌표 정보를 오브젝트 레코드(OR)에 기술하기 위해서는 14바이트가 필요하게 된다. 단, 최초의 요소점(P0)은 절대좌표로 기술될 필요가 있기 때문에, 요소점(P0~P7)의 각 좌표정보를 오브젝트 레코드(OR)에 기술하기 위해서는 차분수(「7」)의 정보를 포함하여 19바이트가 필요하게 된다.
이상, 도 11~도 14를 참조하여 설명한 바와 같이, 오브젝트(OBJ)를 구성하는 각 요소점(P)을 상대좌표를 사용하여 표현하면, 절대좌표 표현만을 이용한 경우와 비교하여 오브젝트 레코드(OR)의 사이즈가 작아진다. 그러나, 오브젝트(OBJ)를 구성하는 각 요소점을 무조건 상대좌표로 표현하면, 데이터 사이즈의 소형화를 실현할 수 없는 경우가 생기는 문제점을 상정할 수 있다. 이러한 문제점을 도 15를 참조하여 설명한다. 도 15에는 요소점(P0, P1 및 Pn)으로 구성되는 오브젝트(OBJ)가 나타나 있다. 지금 요소점(P1)은 상대좌표에서는 (△X1, △Y1)으로 나타난다. △X1 및 △Y1의 쌍방은 1바이트로 표현 가능한 것으로 한다. 마찬가지로 요소점(Pn)은 상대좌표에서는 (△Xn, △Yn)으로 나타낸다. 그러나, △Xn 및/또는 △Yn은 요소점(Pn)이 직전의 요소점(P1)에서 떨어진 위치에 있기 때문에 1바이트로는 표현할 수 없는 값이라고 가정한다. 이와 같은 경우, 도 16에 나타낸 바와 같이 요소점(P1 및 Pn)을 연결하는 직선상에 새로운 요소점(P2 및 P3)을 작성할 필요가 생긴다. 이것에 의해 요소점(Pn)의 상대좌표는 직전의 요소점(P3)의 절대좌표를 기초로 (△X4, △Y4)으로 나타낼 수 있다. △X4 및 △Y4는 요소점(P3)이 요소점(P1)과 비교하여 요소점(Pn) 부근에 위치하기 때문에 1바이트로 표현할 수 있다. 이상의 요소점(P0, P1, P2, P3 및 Pn)의 각 상대좌표 정보를 오브젝트 레코드(OR)에 기술하면 도 17에 나타낸 바와 같이 13바이트 필요하게 된다.
이상, 도 15~도 17을 참조하여 설명한 바와 같이 2개의 요소점(P)이 떨어져 위치하고 있는 경우에는 새로운 요소점(P)을 보완할 필요가 생긴다. 그 결과, 오브젝트 레코트(OR)에는 보완한 요소점(P)의 상대좌표정보를 기술하지 않으면 안 된다. 이와 같이 최초의 요소점(P)을 제외한 모든 요소점(P)을 상대좌표로 표현하려고 하면 요소점(P)의 수가 불필요하게 많아져서 오브젝트 레코드(OR)의 데이터 사이즈가 불필요하게 커지는 문제점이 현저하게 된다. 그래서, 도 15의 요소점(P0 및 Pn)을 절대좌표로 표현하고, 요소점(P0)을 기준으로 한 상대좌표로 요소점(P1)을 표현하는 것이 유효하게 된다. 지금 요소점(Pn)의 절대좌표는 4바이트로 표현할 수 있는 (Xn, Yn)이라고 가정하여 요소점(P0, P1 및 Pn)의 각 좌표정보를 오브젝트 레코드(OR)에 기술하면, 도 18에 나타낸 바와 같이 된다. 도 18에 있어서, 요소점(P0 및 Pn)의 절대좌표정보는 각각 4바이트이고, 요소점(P1)의 상대좌표정보는 2바이트이다. 또, 절대좌표로 나타낸 P0 및 Pn을 기준으로 하여 몇 개의 상대좌표가 작성되었는지를 나타내는 차분수의 정보는 2바이트이다. 이상의 합계를 취하면 오브젝트 레코드(OR)의 데이터 사이즈는 12바이트가 된다. 이 데이터 사이즈는 상대좌표만으로 표현한 경우의 오브젝트 레코드(OR)의 데이터 사이즈 13바이트(도 17 참조)보다도 작다.
이상, 도 18을 참조하여 설명한 바와 같이, 그 직전의 요소점과 떨어져 위치하는 요소점은 절대좌표로 표현된다. 이와 같이 본 실시형태에서는 어느 요소점은 주로 상대좌표로 표현되지만, 다른 요소점은 절대좌표로 표현된다. 이것에 의해 오브젝트 레코드(OR)의 데이터 사이즈를 보다 작게 하는 것이 가능하게 된다.
또, 상기한 바와 같이 본 실시형태에서는 오브젝트의 경계에도 상대좌표 표현이 적용된다. 여기에서 오브젝트의 경계란 어느 오브젝트(OBJ)를 구성하는 하나의 요소점(P)에서 펜업하여 다른 오브젝트(OBJ)를 구성하는 하나의 요소점(P)에 펜다운하는 부분을 의미한다. 이러한 상대좌표 표현의 적용에 의해 본 실시형태는 배경 테이블의 데이터 사이즈를 소형화할 수 있다고 하는 기술적 효과를 나타낸다. 이하에는 우선 이러한 기술적 효과를 명확하게 하기 위해 오브젝트의 경계에 상대좌표 표현이 적용되지 않은 경우에 대해 도 19 및 도 20을 참조하여 설명한다. 도 19에는 묘화 오브젝트(DO3)가 도시되어 있다. 묘화 오브젝트(BO3)는 오브젝트(OBJ3 및 OBJ4)로 구성된다. 오브젝트(OBJ3)는 6개의 요소점(P0∼P5)으로 구성된다. 또한, 오브젝트(OBJ4)는 4개의 요소점(P6∼P9)으로 구성된다.
이상의 오브젝트(OBJ3)는 요소점(P0→P1→P2→P3→P4→P5→P0)이라는 순서로 한번에 쓰여진다. 그 후, 요소점(P0)에서 펜업이 이루어지고, 요소점(P6)에서 펜다운이 이루어진다. 그리고, 오브젝트(OBJ4)는 요소점(P6→P7→P8→P9→P6)이라는순서로 한번에 쓰여진다. 이 때, 오브젝트의 경계에서 상대 좌표가 적용되지 않는다고 가정하면, 요소점(P0∼P5) 및 요소점(P6∼P9)을 나타내는 좌표의 데이터 구조는 도 20에 도시한 바와 같이 된다. 도 20에서, 최초로 오브젝트(OBJ3)의 기준점이 되는 요소점(P0)의 절대좌표(X0,Y0)가 4바이트로 기술된다. 오브젝트(OBJ3)의 묘화시에는 요소점(P0)에 펜다운한 후 펜업할 때까지 요소점(P1∼P5)을 찾아가게 되므로, 차분수(즉 상대좌표의 갯수)는 5개가 되고 1바이트의 정보이다. 지금, 요소점(P1∼P5)의 상대좌표는 상기와 동일하게 2바이트로 나타나고, (△X1, △Y1)∼(△X5, △Y5)이다. 또한, 오브젝트의 경계부분에 상대좌표가 적용되지 않으므로, 요소점(P5)의 상대좌표의 후에는 오브젝트(OBJ4)의 기준점이 되는 요소점(P6)의 절대좌표(X1,Y1)가 4바이트로 기술된다. 오브젝트(OBJ4)의 묘화시에는 요소점(P6)에 펜다운한 후 펜업할 때까지 요소점(P7∼P9)을 찾아가게 되므로, 차분수(상대좌표의 갯수)는 3개가 되고 1바이트의 정보이다. 요소점(P7∼P9)의 상대좌표는 (△X6,△Y6)∼(△X8,△Y8)이고 2바이트로 나타난다. 따라서, 양 오브젝트의 경계에 상대좌표를 적용하지 않는 경우에 오브젝트(OBJ3 및 OBJ4)를 나타내는 상대좌표열은 26 바이트로 표현된다.
다음에, 오브젝트의 경계에 상대좌표표현이 적용되는 경우에 대해서 도 21 및 도 22를 참조하여 설명한다.
도 21에는 도 19와 동일하게, 2개의 오브젝트(OBJ3 및 OBJ4)로 구성되는 묘화 오브젝트(DO3)가 도시되어 있다. 묘화 오브젝트(DO3)는 요소점(P0→P1→P2→P3→P4→P5)이라는 순으로 한번에 쓰여진다. 그 후, 요소점(P5)에서 요소점(P6)으로의 펜업 및 펜다운이 실시된 후, 묘화 오브젝트(DO3)는 요소점(P6→P7→P8→P9→P6)이라는 순번으로 한번에 쓰여진다. 단, 묘화시에는 한번에 쓰기의 개시점과 펜업한 점은 반드시 연결한다는 원칙이 있으므로, 요소점(P5) 및 요소점(P0)은 선으로 연결된다. 이상의 묘화시에서 오브젝트의 경계에서 상대좌표가 적용된다고 가정하면, 요소점(P0∼P5) 및 요소점(P6∼P9)을 나타내는 좌표의 데이터 구조는 도 22에 도시한 바와 같이 된다. 도 22에서 최초로 오브젝트(OBJ3)의 기준점이 되는 요소점(P0)의 절대좌표(X0,Y0)가 4바이트로 기술된다. 묘화 오브젝트(DO3)의 묘화시에는 요소점(P0)부터 한번에 쓰기의 개시부터 종료까지 요소점(P1∼P9)을 찾아가게 되므로, 상대좌표의 갯수, 즉 차분수는 1바이트의 데이터이고 「9개」를 나타낸다. 지금, 요소점(P1∼P9)의 상대좌표는 상술한 바와 동일하게 2바이트로 나타나고, (△X1,△Y1)∼(△X9,△Y9)이다. 따라서, 양 오브젝트의 경계에 상대좌표를 적용하는 경우에는 오브젝트(OBJ3 및 OBJ4)를 나타내는 상대좌표열은 23바이트로 표현된다.
이상, 도 19∼도 22를 참조하여 설명한 바와 같이, 오브젝트의 경계에 상대좌표를 적용하면, 그것을 적용하지 않는 경우와 비교하여 배경 테이블의 데이터 사이즈를 소형화할 수 있다.
여기에서 주의를 요하는 것은 도 20에서는 오브젝트의 경계는 오브젝트 레코드(OR)에 기술된 절대좌표에 의해 나누어진다. 그러나, 도 22에서는 오브젝트의 경계는 절대좌표로부터는 발견할 수 없다.
도 21에 도시한 바와 같이 오브젝트의 경계를 규정하는 것은 펜업하는 요소점(P) 및 펜다운하는 요소점(P)이 각각 상대좌표로 나타나는 경우가 있고, 또한 도 18에 도시한 바와 같이 2점간의 거리가 떨어져 있는 경우에는 요소점(P)이 절대좌표로 표현되는 경우가 있기 때문이다. 그러나, 도 22에서 오브젝트의 경계는 도 10에 도시된 요소점수(N1)∼요소점수(NN)를 참조하면 정확하게 규정할 수 있다. 즉, 본 실시형태에서는 요소점수(N1)∼요소점수(NN)는 각각 펜다운하고 나서 펜업할 때까지 한번에 쓰기로 찾는 요소점의 갯수를 의미한다. 따라서, 실제의 묘화시에서 오브젝트 레코드(OR)의 선두부터 좌표의 갯수를 카운트하고, 카운트값이 요소점수(N1)와 동일하면, 최초의 오브젝트의 경계를 정확하게 특정할 수 있다. 동일하게 카운트값이 요소점수(N1 및 N2)의 가산값과 동일하면, 2회째의 오브젝트의 경계를 특정할 수 있다. 이후, 동일하게 카운트값이 요소점수(N1∼NN)의 가산값과 동일하면 N회째의 오브젝트의 경계를 특정할 수 있다.
「문자 기호 데이터의 상세한 데이터 구조」
다음에, 도 7에 도시한 문자 기호 데이터에 대해서 설명한다. 또한, 문자 기호 데이터는 본원 발명의 특징적인 사항은 아니므로 간단하게 설명한다. 문자 신호 데이터는 상술한 바와 같이 유닛(U)이 커버하는 지도에 기재될 문자열(지명, 도로명칭 및 교차점 명칭 등)으로 이루어진 데이터와, 상기 지도에 기재될 지도 기호로 이루어진 데이터를 의미한다. 또한, 문자 기호 데이터는 도 7에 도시한 바와 같이 기본문자기호 테이블과 상세문자기호 테이블로 구성된다. 기본문자기호 테이블은 유닛(U)이 커버하는 지도에 기재되는 문자열 또는 지도 기호 내에서 기본적인 문자열 및 지도 기호를 나타내는 데이터의 집합이다. 보다 구체적으로는 기본문자기호 테이블에는 도 23의 (a)에서 밝혀진 바와 같이, 하천명칭, 도로명칭 및 지도기호 등, 유닛(U)이 커버하는 지도를 표시할 때 개략이 되는 문자열 및 지도기호가 기록된다. 한편, 상세문자기호 테이블은 유닛(U)이 커버하는 지도에 기재되는 문자열 또는 지도기호 중, 기본문자기호 테이블에는 기록되지 않는 문자열 및 지도기호를 나타내는 데이터의 집합이다. 보다 구체적으로는 상세문자기호 테이블에는 도 23의 (b)로부터 밝혀진 바와 같이, 공원, 철도, 다리 및 공장의 명칭 등, 유닛(U)이 커버하는 지도를 보다 상세하게 표시하기 위한 문자열 및 지도기호가 기록된다.
여기에서, 본 실시형태의 단말장치(1)로서는 상술한 바와 같이 카 네비게이션 시스템이 상정되어 있다. 이러한 사정으로부터 기본 문자 데이터 테이블에는 카 네비게이션에 중요한 하천명칭, 도로명칭 및 지도기호 등이 기록된다고 설명했다. 그러나, 다른 용도의 단말장치(1)도 상정할 수 있다. 그 때문에, 기본문자기호 테이블에 어떠한 문자열 및 지도 기호가 기록되는지, 또는 상세문자기호 테이블에 어떠한 문자열 및 지도 기호가 기록되는지에 대해서는 단말장치(1)의 용도에 의존한다. 그 때문에, 본원 발명의 기술범위는 기본문자기호 데이터 테이블에는 하천명칭, 도로명칭 및 지도기호 등이 기록된다고 한정 해석되어서는 안된다.
또한, 이상의 기본문자기호 테이블 및 상세문자기호 테이블은 도 7에서 밝혀진 바와 같이 유닛 데이터에서 서로 별개의 필드에 기록된다. 또한, 기본문자기호 테이블 및 상세문자기호 테이블에는 서로 참조하는 정보는 일체 기록되지 않는다. 즉, 기본문자기호 데이터 테이블을 구성하는 문자열 또는 지도 기호를 그리고 있을 때, 상세문자기호 테이블의 문자열 또는 지도 기호는 어느 하나 참조되지 않는다. 반대로, 상세문자기호 테이블을 구성하는 문자열 및 지도기호를 그리고 있을 때, 기본문자기호 테이블의 문자열 및 지도기호는 어느 하나 참조되지 않는다. 이와 같이, 기본문자기호 테이블 및 상세문자기호 테이블은 서로 독립된 데이터 구조를 갖는다. 따라서, 문자열 및 지도 기호를 디스플레이 상에 표시하는 경우에는 도 23의 (a)에 도시한 바와 같이 기본문자기호 테이블에서만 표시되는 문자열 및 지도기호를 표시하는 것이 가능해진다. 이에 의해, 단말장치(1)의 사용자는 개략적인 지도를 보는 것이 가능해진다. 또한, 도 23의 (c)에 도시한 바와 같이, 기본문자기호 테이블 및 상세문자기호 테이블 각각을 구성하는 문자열 및 지도 기호를 표시할 수도 있다. 이 경우, 소정의 원점을 기준으로 하여, 기본문자기호 테이블로부터 얻어지는 개략적인 문자열 및 지도 기호에 상세문자기호 테이블로부터 얻어지는 문자열 및 지도 기호를 중합시키게 된다. 이에 의해, 단말장치(1)의 사용자는 상세한 지도를 보는 것이 가능해진다. 또한, 본 실시형태에서는 문자기호데이터는 기본문자기호 테이블 및 상세문자기호 테이블로 구성되는 것으로 설명했지만, 제 1 기억장치(19) 또는 제 2 기억장치(24)에 기억용량의 제한이 있는 경우 등에는 제 1 데이터베이스(111) 또는 제 2 데이터베이스(25)를 작은 사이즈로 하는 관점에서 문자 기호 데이터는 기본문자기호 테이블만으로 구성되어도 좋다. 반대로, 본 실시형태에서 설명한 바와 같이 문자 기호 데이터는 기본문자기호 테이블 및 상세문자기호 테이블로 구성되는 경우에는, 센터국(2)은 상세한 지도를 단말장치(1)에 제공하는 것이 가능해지고, 상기 단말장치(1)는 상세한 지도를 디스플레이에 표시할 수 있게 된다.
상술한 기본문자기호 테이블 및 상세문자기호 테이블의 내부의 데이터 구조는 서로 동일하다. 이하에는 기본문자기호 테이블 및 상세문자기호 테이블을 문자기호 테이블이라고 총칭하여 쌍방의 데이터 구조에 대해서 보다 상세하게 설명한다.
상술한 바와 같이 문자 기호 테이블은 유닛(U)이 커버하는 지도상의 문자열 및 지도기호를 디스플레이 상에 표시하기 위한 데이터의 집합이다. 여기에서, 도 24는 문자 기호 테이블, 즉 기본문자기호 테이블 또는 상세문자기호 테이블의 상세한 데이터 구조를 도시한 도면이다. 도 24에서 문자 기호 테이블은 문자 기호 레코드수(P)와, P개의 문자 기호 레코드(TSR1∼TSRP)로 구성된다. 문자 기호 레코드수(P)는 문자 기호 테이블에 포함되는 문자 기호 레코드(TSR1∼TSRP)의 갯수를 나타내는 정보이다. 여기에서, P는 1이상의 자연수이고, 유닛(U)이 커버하는 지도상의 문자열 및 지도기호의 총수이다. 문자 신호 레코드(TSR1∼TSRP)는 유닛(U)이 커버하는 지도상의 문자열 또는 지도 기호의 수만큼 작성된다. 문자 기호 레코드(TSR1)는 문자 기호 속성, 포인트 좌표, 문자 기호 코드로 구성된다.
문자 기호 속성은 문자 기호 레코드(TSR1)로 표현되는 문자열 또는 지도기호의 속성을 나타내는 정보이다.
문자 기호 속성에는 문자열 또는 상기 지도 기호의 사이즈와, 문자열이 나열되는 방향(세로/가로)을 나타내는 정보가 기록된다. 여기에서, 주의를 요하는 것은 지도 기호는 복수의 기호에 의해 하나의 대상물을 나타내는 일이 거의 없고, 또한 하나의 문자로 나타나는 지명도 있다. 이러한 경우에는 문자열이 나열되는 방향(세로/가로)을 나타내는 정보가 문자 기호 속성에 기록될 필요성이 특별히 없다. 포인트 좌표는 문자 기호 레코드(TSR1)로 표현되는 문자열 또는 지도신호가 유닛(U)상의 어느 위치에 표시되는지를 특정하기 위한 좌표정보이다. 문자기호 레코드(TSR1)로 표현될 문자열 등은 디스플레이상에서 포인트 좌표에 의해 특정되는 위치에 표시된다. 또한, 문자 기호 레코드는 문자 기호 레코드(TSR1)로 표현될 문자열 및 지도 기호의 코드 번호이다. 문자열의 코드 번호로서는 일본에서는 시프트 JIS 코드가 전형적이고, 문자 기호 속성에 기록된 문자열의 대소를 나타내는 사이즈에 해당하는 정보가 기록된다. 여기에서, 지도 기호는 시프트 JIS 등과 같이 그에 관련된 규격이 없으므로 독자적으로 작성된다. 또한, 작성된 지도 기호의 코드 번호로서는 일본에서는 시프트 JIS의 빈 코드번호가 할당된다. 할당된 코드 번호가 문자 기호 코드로서 기록된다.
또한, 다른 문자 기호 레코드(TSR2∼TSRP)는 문자 기호 레코드(TSR1)와 동일한 데이터 구조를 가지므로 각각의 설명을 생략한다.
「도로 네트워크 데이터의 상세한 데이터 구조」
다음에, 도 7에 도시한 도로 네트워크 데이터에 대해서 설명한다. 도로 네트워크 데이터는 카 네비게이션 시스템으로서의 단말장치(1)에서 디스플레이상에 도로를 표시하기 위해 사용될 뿐만 아니라, 맵매칭, 경로 탐색 처리 또는 경로 안내 처리에도 사용된다. 그 때문에, 도로 네트워크 데이터는 상술한 바와 같이 유닛(U)이 커버하는 지도에 나타날 도로 그 자체를 나타내는 도형 데이터 및 도로 끼리의 연결을 나타내는 데이터의 집합을 의미한다. 보다 구체적으로는 도로 네트워크 데이터는 맵 매칭 등에 사용되므로, 상기 도로 네트워크 데이터에는 단지 도로망의 형상을 나타내는 도형 데이터가 기록될 뿐만 아니라, 유닛(U)이 커버하는 범위의 지도에 나타나는 도로 끼리의 접속 관계를 나타내는 데이터도 기록된다.
이상의 도로 네트워크 데이터는 도 7에 도시한 바와 같이 제 1 네트워크 데이터와 제 2 네트워크 데이터로 구성된다. 제 1 네트워크 데이터에는 주요 간선도로의 도로 네트워크 데이터가 기록된다. 주요 간선 도로라는 것은 예를 들어 이하의 3개의 조건 중 어느 것인가를 만족하는 것을 의미한다. 우선, 제 1 조건은 지방 자치체 및 그보다도 상위의 행정기관이 만든 도로(고속도로, 국도)인 것이다. 제 2 조건은 지방자치체 보다도 하위의 행정기관이 만든 도로(고속도로, 국도) 및 사도(私道)로서, 또 그 폭이 5.5m 이상의 도로인 것이다. 제 3 조건은 상기 제 1 및 제 2 조건에 해당하는 도로에 접속된 도로인 것이다. 또한, 제 2 네트워크 데이터에는 세가로의 도로 네트워크 데이터가 기록된다. 세가로라는 것은 그 폭이 3.0m 이상이고, 주요 간선 도로에 해당하지 않는 도로(예를 들어 주택의 주변에 만들어진 도로)를 의미한다. 단, 상기의 주요 간선 도로 및 세가로의 정의는 단순한 한 예이고, 다른 정의를 채용해도 관계없다. 그 때문에, 본원 발명의 기술범위는 제 1 및 제 2 도로 네트워크 데이터에는 상기 정의에만 해당하는 도로 네트워크 데이터가 기록된다고 한정 해석해서는 안된다.
다음에, 제 1 도로 네트워크 데이터 및 제 2 도로 네트워크 데이터의 관계에서 대해서 도 25를 참조하여 설명한다. 제 1 도로 네트워크 데이터는 주요 간선도로의 도로 네트워크 데이터이다. 그 때문에, 제 1 도로 네트워크 데이터가 단말장치(1)의 디스플레이에 표시되면, 도 25의 (a)에 도시한 바와 같이 주요 간선 도로를 나타내는 도형이 표시된다. 한편, 제 2 도로 네트워크 데이터는 세가로의 도로 네트워크 데이터이다. 그 때문에, 제 2 도로 네트워크 데이터가 단말장치(1)의 디스플레이에 표시되면, 도 25의 (b)에 도시한 바와 같이 세가로를 나타내는 도형이 표시된다. 이 제 1 및 제 2 도로 네트워크 데이터는 도 7에서 밝혀진 바와 같이 유닛 데이터에서 서로 별도로 기록된다. 따라서, 도 25의 (a)에 도시한 바와 같이 제 1 도로 네트워크 데이터를 구성하는 주요 간선 도로만을 단말장치(1)의 디스플레이에 표시하는 것이 가능해진다. 이에 의해, 단말장치(1)의 사용자는 개략적인 도로 네트워크를 보는 것이 가능해진다. 또한, 도 25의 (c)에 도시한 바와 같이 제 1 및 제 2 도로 네트워크 데이터를 구성하는 주요 간선 도로 및 세가로를 표시할 수도 있다. 이 경우, 소정의 원점을 기준으로 하여 제 1 도로 네트워크 데이터로부터 얻어지는 주요 간선 도로망 상에 제 2 도로 네트워크 데이터로부터 얻어지는 세가로의 도로망을 중합시키는 것이 된다. 이에 의해, 단말장치(1)의 사용자는 상세한 도로망을 보는 것이 가능해진다. 또한, 본 실시형태에서는 도로 네트워크 데이터는 제 1 및 제 2 도로 네트워크 데이터로 구성되는 것으로 설명했지만, 제 1 기억장치(19) 또는 제 2 기억장치(24)에 기억용량의 제한이 있는 경우 등에는 제 1 데이터베이스(111) 또는 제 2 데이터베이스(25)를 작은 사이즈로 하는 관점에서 도로 네트워크 데이터는 제 1 도로 네트워크 데이터만으로 구성되어도 좋다. 반대로, 본 실시형태에서 설명한 바와 같이, 도로 네트워크 데이터가 제 1 및 제 2도로 네트워크 데이터로 구성되는 경우에는, 센터국(2)은 상세한 도로망을 단말장치(1)에 제공하는 것이 가능해지고, 상기 단말장치(1)는 상세한 도로망을 디스플레이에 표시할 수 있게 된다.
상술한 제 1 및 제 2 도로 네트워크 데이터의 데이터 구조는 서로 동일하다. 이하에서는 제 1 및 제 2 도로 네트워크 데이터의 데이터 구조에 대해서 보다 상세하게 설명한다.
주지와 같이 도로 네트워크 데이터는 주로 노드와 링크에 의해 구성된다. 노드라는 것은 주로 교차점 또는 도로의 구획을 표현하기 위한 데이터를 의미한다. 또한, 링크라는 것은 2개의 교차점 사이를 연결하는 도로를 표현하기 위한 데이터이다. 이러한 노드와 링크를 사용함으로써 유닛(U)이 커버하는 지도상에 표시될 도로(주요 간선 도로 또는 세가로)의 형상 및 도로 끼리의 접속관계가 단말장치(1)의 디스플레이상에 표시된다. 그 때문에, 도 7에 도시한 바와 같이 제 1 도로 네트워크 데이터는 제 1 노드 테이블 및 제 1 링크 테이블로 구성되고, 제 2 도로 네트워크 데이터는 제 2 노드 테이블 및 제 2 링크 테이블로 구성된다. 이하에서는 우선 제 1 및 제 2 노드 테이블의 데이터 구조를 우선 설명한다.
여기에서, 도 26은 노드 및 링크의 개념을 설명하기 위한 도면이다. 도 26에는 하나의 유닛(U)이 커버하는 범위에 존재하는 도로망이 도시되어 있다. 도 26의 도로망은 11개의 노드(N0∼N10)와 11개의 링크(L0∼L10)로 구성된다. 11개의 노드(N0∼N10)로 구성된다. 11개의 노드(N0∼N10)는 비인접 노드와 인접 노드로 크게 나누어진다. 비인접 노드라는 것은 통상의 교차점, 도로의 종별 또는 속성이변하는 점(상술한 도로의 구획에 상당한다)에 작성되는 노드이고, 유닛(U)내에서의 도로의 접속관계를 나타내는 분기점을 의미한다. 그런데, 도 26의 유닛(U0)에는 동일한 레벨에 속하고 또한 인접하는 유닛(U)이 몇 개인가 있다(도 2 참조). 따라서, 1개의 도로가 서로 인접하는 복수의 유닛(U)에 걸치는 경우가 있다. 이하에서는 도 26의 유닛(U)에 인접하는 유닛(U)을 편의상 인접 유닛(NU)이라고 칭한다. 도 26에는 인접 유닛(NU) 중 하나가 점선으로 도시되어 있다. 인접 노드는 도 26의 유닛(U) 및 인접 유닛(NU) 사이에 걸치는 도로가 존재하는 경우에 상기 유닛(U)의 경계(즉 장방형 영역의 변)상에 작성되는 노드이고, 상기 유닛(U)과 인접 유닛(NU)의 도로의 접속 관계를 나타내는 점을 의미한다. 이상의 정의에 따르면, 도 26의 노드(N1, N2, N5 및 N8)의 4개(○표 참조)가 비인접 노드로 분류된다. 또한, 노드(N0, N3, N4, N6, N7, N9, N10)의 7개(●표 참조)가 인접 노드로 분류된다. 여기에서, 주의를 요하는 것은 교차점 또는 도로의 구획을 나타내는 노드(N)가 유닛(U)의 경계상에 존재하는 경우에는 상기 노드(N)를 인접 노드로 분류하는지, 비인접 노드로 분류하는지가 문제가 된다. 이러한 경우, 교차점 또는 도로의 구획을 나타내는 노드(N)를 경계상으로부터 어긋나게 하여, 새로운 비인접 노드를 작성하는 것이 하나의 대처방법이다. 다른 대처방법으로서 유닛(U)의 경계상의 교차점 또는 도로의 구획과 동일한 좌표상에 비인접 노드를 작성하는 것이 있다. 이상으로부터 밝혀진 바와 같이 유닛(U)의 경계상에는 인접 노드가 작성되어서는 안된다.
도 27은 제 1 노드 테이블의 상세한 데이터 구조를 도시한 도면이다. 여기에서, 미리 양해를 구해 두지만, 제 1 및 제 2 노드 테이블은 서로 동일한 데이터 구조를 갖고 있지만, 주요 간선 도로 및 세가로에 대해서 작성되는 점에서 상이하다. 그 때문에, 설명의 간소화의 관점에서 제 2 노드 테이블의 상세한 설명을 생략한다. 이제, 도 27에서 제 1 노드 테이블은 인접 노드수(Q), 비인접 노드수(R), (Q+R)개의 노드 레코드(NR1∼NR(Q+R))로 구성된다. 인접 노드수(Q)는 제 1 노드 테이블에 포함되는 인접 노드의 갯수를 나타내는 정보이다. 여기에서 Q는 1 이상의 자연수로서, 유닛(U)에 의해 나타나는 지도상의 도로망에 인접 노드가 몇 개 존재하는지를 나타낸다. 비인접 노드수(R)는 제 1 노드 테이블에 포함되는 비인접 노드의 갯수를 나타내는 정보이다. 여기에서, R은 1 이상의 자연수로서, 유닛(U)에 의해 나타나는 지도상의 도로망에 비인접 노드가 몇 개 존재하는지를 나타낸다.
노드 레코드(NR1∼NR(Q+R))는 유닛(U)에 의해 나타나는 지도상의 도로망에 존재하는 노드(N)의 수만큼 작성된다. 노드 레코드(NR1∼NR(Q+R))에는 (Q+R)개의 노드(N)에 관련된 정보가 기록된다.
다음에, 본 실시형태에서의 노드 레코드(NR1∼NR(Q+R))의 나열방법에 대해서 설명한다. 제 1 노드 테이블에서 최초의 Q개의 노드 레코드(NR1∼NRQ)에는 Q개의 인접 노드에 관련된 정보가 기록되고, 이후의 R개의 노드 레코드(NR(Q+1)∼NR(Q+R))에는 R개의 비인접 노드에 관련된 정보가 기록된다.
또한, Q개의 노드 레코드(NR1∼NRQ)에서, 선두로부터 차례로 장방형 영역(유닛(U))의 좌변상에 존재하는 인접 노드(도 26의 ①참조)에 관련된 정보가 기록된다. 다음에, 장방형 영역의 상변상에 존재하는 인접 노드(도 26의 ②참조)에 관련된 정보가 기록된다. 다음에, 장방형 영역의 우변상에 존재하는 인접 노드(도 26의 ③참조)에 관련된 정보가 기록된다. 마지막으로, 장방형 영역의 하변상에 존재하는 인접 노드(도 26의 ④참조)에 관련된 정보가 기록된다.
또한, 상기 우변상 또는 좌변상의 인접 노드의 노드 레코드(NR)는 상기 인접 노드의 위도가 오름차순이 되도록 나열된다. 한편, 상기 상변상 또는 하변상의 인접 노드의 노드 레코드(NR)는 상기 인접 노드의 경도가 오름차순이 되도록 나열된다.
또한, 비인접 노드의 노드 레코드(NR)는 최초로 상기 비인접 노드의 위도가 오름차순이 되도록 나열된다. 이 때, 동일한 위도의 비인접 노드가 복수 존재한 경우에는 노드 레코드(NR)는 상기 비인접 노드의 경도가 오름차순이 되도록 나열된다.
도 26의 노드(N0∼N10)에 관하여 상기의 나열 방법에 따르면, 도 28에 도시한 바와 같이 선두의 노드 레코드(NR1)에는 인접 노드(N6)의 정보가 기록된다. 다음의 노드 레코드(NR2)에는 인접 노드(N0)의 정보가 기록된다. 노드 레코드(NR3, NR4, NR5, NR6 및 NR7)에는 인접 노드(N4, N7, N10, N3 및 N9)의 정보가 기록된다. 여기에서, 도 28 중의 ①∼④는 도 26의 ①∼④에 대응하고 있고, 인접 노드가 나열되는 순위를 나타내고 있다. 다음의 노드 레코드(NR8)에는 비인접 노드(N8)의 정보가 기록된다. 노드 레코드(NR9, NR10 및 NR11)에는 비인접 노드(N5, N2 및 N1)의 정보가 기록된다. 이상과 같이 본 실시형태에서는 유닛(U)에 포함되는 노드(N)의 정보는 무작위가 아니라 상술한 규칙에 따른 순번으로 노드 레코드(NR)에 기록되어 간다. 여기에서, 이하의 설명에서 노드 레코드 번호라는 것은 최초의 노드 레코드(NR1)를 「0」으로 하고, 각 노드 레코드(NR2) 이후가 몇 번째에 기록되어 있는지를 특정하는 번호를 의미한다. 이상의 노드 레코드 번호를 도 28의 노드 레코드(NR1∼NR11)에 적용시키면, 상기 노드 레코드(NR1∼NR11)의 노드 레코드 번호는 「0」∼「10」이 된다. 또한, 이상과 같은 나열방식은 유닛(U)과 인접 유닛(NU)의 사이에 걸치는 도로의 접속관계를 찾아가는 처리를 고속으로 실시하거나, 유닛(U)의 부자간에서의 노드나 링크의 연결을 정확하게 실시할 수 있다는 효과를 발생시키지만, 이것의 구체적인 처리 및 효과에 대해서는 후술한다.
이제, 다시 도 27을 참조하여, 노드 레코드(NR1)의 내부 데이터 구조를 상세하게 설명한다. 노드 레코드(NR1)는 노드 속성, 노드 좌표 및 노드 접속 정보로 구성된다. 노드 속성은 노드 레코드(NR1)에 기록되는 노드의 속성을 나타내기 위한 정보이다. 노드 속성의 예로서는 기록된 노드에 교차점에서의 교통이 규제되어 있는지의 여부를 나타내는 정보, 상기 노드에 의해 나타나는 교차점에 명칭이 있는지의 여부를 나타내는 정보, 상기 노드에 의해 나타나는 교차점에 신호기가 존재하는지의 여부 등의 정보가 있다. 또한, 노드 속성에 교통규제 또는 교차점 명칭의 유무에 관한 정보를 기록하는 경우에는 본 실시형태에서는 설명하지 않는 교차점 규제 테이블 및 교차점 명칭 테이블 등의 테이블을 별도로 작성하고, 해당하는 정보를 기록하도록 한다.
또한, 노드 좌표는 노드 레코드(NR1)에 기록되는 노드의 경도 방향의 좌표 및 위도 방향의 좌표를 나타내기 위한 정보이다. 노드의 경도 방향의 좌표 및 위도 방향의 좌표로서는 절대 경도위도 좌표를 기록해도 좋지만, 기록되는 노드를 포함하는 유닛(U)(장방형 영역)의 왼쪽 아래 구석을 기준점으로 하여, 상기 유닛(U)이 커버하는 범위의 경도폭 및 위도폭을 2바이트 정도의 값으로 정규화한 좌표로 나타내는 것이 일반적이다. 예를 들어, 도 29에 도시한 바와 같이 유닛(U)의 왼쪽 아래 구석(Na)의 좌표를 (0000h, 0000h)로 표현하고(h는 16진수의 값을 나타낸다), 상기 유닛(U)의 좌표계를 경도방향 및 위도방향 모두 8000h으로 정규화한다. 이 경우, 유닛의 왼쪽 위 구석(Nb)의 좌표는 (0000h, 8000h)로 표현된다. 또한, 유닛의 오른쪽 아래 구석(Nc)의 좌표는 (8000h, 0000h)로 표현된다. 또한, 유닛의 오른쪽 위 구석(Nd)의 좌표는 (8000h, 8000h)으로 표현된다.
또한, 노드접속정보는 노드 레코드(NR1)에 기록되는 노드(N)와, 후술하는 링크 레코드(LR)에 기록되는 링크(L)의 접속관계를 나타내는 정보이다. 노드 접속 정보의 상세한 내용에 대해서는 후술한다.
또한, 다른 노드 레코드(NR2∼NR(Q+R))의 내부 데이터 구조에 대해서는 노드 레코드(NR1)와 동일하므로 설명을 생략한다. 단, 다른 노드 레코드(NR2∼NR(Q+R))에는 서로 다른 노드(N)의 정보가 기록된다.
다음에, 도 7의 제 1 링크 테이블의 데이터 구조를 설명한다. 여기에서, 미리 양해를 구해 두지만, 제 1 및 제 2 링크 테이블은 동일한 데이터 구조를 갖고 있고, 주요 간선도로 및 세가로에 대해서 작성되는 점에서 상이하다. 그 때문에, 이후에서는 제 2 링크 테이블의 상세한 설명을 생략한다. 도 30은 제 1 링크 테이블의 상세한 데이터 구조를 나타낸 도면이다. 도 30에서 제 1 링크 테이블은 도로수(S)와, S개의 도로 레코드(RR1∼RRS)로 구성된다. 도로수(S)는 제 1 노드 테이블에 의해 나타나는 도로망에 포함되는 도로의 갯수를 나타내는 정보이다. 여기에서, S는 1 이상의 자연수로서, 유닛(U)에 의해 나타나는 지도상의 도로망에 도로가 몇 개 존재하는지를 나타낸다. 도로 레코드(RR1)에는 어느 하나의 도로속성이 할당되고, 상기 도로속성이 동일한 링크(L) 및 노드(N)에 관한 정보가 기록된다. 또한, 도로 레코드(RR2)에는 다른 1개의 도로속성이 할당되고, 상기 도로속성이 동일한 링크(L) 및 노드(N)에 관한 정보가 기록된다. 이후, 마찬가지로 도로 레코드(RRS)에는 다른 도로 레코드(RR1∼RR(S-1))에는 할당되어 있지 않은 하나의 도로속성이 할당되고, 상기 도로속성이 동일한 링크(L) 및 노드(N)에 관한 정보가 기록된다. 이상으로부터 밝혀진 바와 같이 도로 레코드(RR1∼RRS)에는 서로 다른 도로속성이 할당된다. 여기에서, 도로속성이라는 것은 도로의 종별로 분류하기 위한 정보이다. 전형적으로는 도로는 고속도로, 국도, 현도, 시도(市道), 사도 등이라는 구분으로 분류되고, 또한 각 도로의 명칭에 따라서 보다 상세하게 분류된다. 또한, 필요에 따라서 도로의 일방 통행규제 등을 도로 속성에 채용해도 좋다.
도로 레코드(RR1)는 도로속성, 링크수(T1), 선두 노드 레코드 번호 및 T1개의 링크 레코드(LR1∼LRT1)로 구성된다. 도로속성에는 도로종별(고속도로, 국도, 현도 등), 도로의 일방통행규제 등을 나타내는 정보가 기록된다. 링크수(T1)는 도로 레코드(RR1)에 기록되는 링크(L)의 갯수를 나타내는 정보이다. 여기에서 T1은 1 이상의 자연수로서, 유닛(U)에 의해 나타나는 지도상의 도로망에서 도로속성의 정보에 해당하는 링크(L)가 몇개 존재하는지를 나타내는 정보이다. 선두 노드 레코드 번호는 소정의 노드 레코드(NR)를 특정하기 위한 노드 레코드 번호를 의미한다. 이 노드 레코드 번호는 도 28 등을 참조하여 상술한 바와 같이 최초의 노드 레코드(NR1)를 「0」으로 하고, 각 노드 레코드(NR2) 이후가 몇 번째에 기록되어 있는지를 특정하는 번호이다. 또한, 소정의 노드 레코드(NR)라는 것은 도로 레코드(RR1)에 의해 나타나는 도로망의 선두에 위치하는 노드(N)가 기록된 것을 의미한다. 또한, 링크 레코드(LR1)에는 유닛(U)에 의해 나타나는 지도상의 도로망에서 도로속성에 의해 분류되는 링크(L) 중 어느 하나에 관한 정보가 기록된다. 그 때문에, 링크 레코드(LR1)는 링크 속성과 링크 접속 정보로 구성된다. 링크 속성이라는 것은 링크 레코드(LR1)에 의해 나타나는 링크(L)의 속성을 나타내는 정보이다. 링크 속성의 전형예로서는 링크 종별(본선(本線) 링크인지, 측도(側道)링크인지 등) 또는 차선수 등이 있다. 또한, 링크 접속 정보는 링크 레코드(LR1)에 의해 나타나는 링크(L)에 접속된 노드(N) 또는 링크 레코드(LR1)에 의해 나타나는 링크(L)와 노드(N)를 통하여 연결되어 있는 링크(L)의 정보이다. 또한, 링크 레코드(LR2)에는 도로속성에 의해 분류되는 링크(L) 내의 다른 하나에 관한 정보가 기록된다. 이후 동일하게 링크 레코드(LRT1)에는 도로속성에 의해 분류되는 링크(L) 중, 다른 링크 레코드(LR(T1-1))에 기록되어 있지 않은 하나의 링크(L)에 관한 정보가 기록된다. 여기에서, 링크 레코드(LR2∼LRT)는 링크 레코드(LR1)와 동일하게 링크 속성과 링크 접속 정보로 구성된다. 이상으로부터 밝혀진 바와 같이, 링크 레코드(LR1∼LRT1)에는 서로 다른 링크(L)에 관한 정보가 기록된다.
이제, 다음에 제 1 링크 테이블에 기재되는 정보의 구체예를 도 26의 도로망의 경우에 대해서 구체적으로 설명한다. 상술한 바와 같이 도 26의 도로망은 11개의 노드(N0∼N10)와 11개의 링크(L0∼L10)로 구성된다. 또한, 설명을 보다 구체적으로 하기 위해 링크(L0∼L2)는 노드(N0)를 선두로 하여, L0→L1→L2의 순번으로 접속됨으로써 1개의 도로(예를 들어 국도)를 구성하는 것으로 가정한다. 이 가정하에서는 링크(L0∼L2)는 서로 동일한 도로속성(국도)을 갖는다. 링크(L3∼L5)는 노드(N4)를 선두로 하여, L3→L4→L5의 순번으로 접속됨으로써 1개의 도로(예를 들어, 현도)를 구성하는 것으로 가정한다. 이 가정하에서는 링크(L3∼L5)는 서로 동일한 도로속성(현도)을 갖는다. 링크(L6∼L8)는 노드(N7)를 선두로 하여, L6→L7→L8의 순번으로 접속됨으로써 1개의 도로(예를 들어 폭이 5.5m 이상의 사도)를 구성한다고 가정한다. 이 가정하에서는 링크(L6∼L8)는 서로 동일한 도로속성(사도)을 갖는다. 링크(L9 및 L10)는 노드(N5)를 선두로 하여, L9→L10의 순번으로 접속됨으로써 1개의 도로(예를 들어 시도)를 구성한다고 가정한다. 이 가정하에서는 링크(L9 및 L10)는 서로 동일한 도로속성(시도)을 갖는다.
이상의 가정하에서는 도로는 국도, 현도, 사도 및 시도의 4개이므로, 제 1 링크 테이블의 도로수(S)로서 「4」가 기록된다. 또한, 도로속성으로서는 국도, 현도, 사도 및 시도의 4종류가 있으므로, 제 1 링크 테이블에는 4개의 도로 레코드(RR1∼RR4)가 기록된다. 우선, 도로 레코드(RR1)에 대해서 설명한다. 도로속성으로서는 「국도」를 나타내는 정보가 기록된다. 또한, 링크수(T1)로서는 국도가 링크(L0∼L2)로 구성되는 것으로부터 「3」을 나타내는 정보가 기록된다. 또한, 링크(L0∼L2)로 나타나는 도로의 선두는 노드(N0)로 표시된다. 노드(N0)의 레코드 번호는 「1」이다(도 28 참조). 그 때문에, 선두 노드(N)의 번호로서는 「1」이 기록된다. 다음에, 링크 레코드(LR11)(링크(L0)의 레코드)에서 링크 속성에 대해서는 설명을 생략한다.
그런데, 여기에서 각 링크 레코드(LR)에 기록되는 링크 접속정보 및 도 27에 도시되는 노드 접속 정보를 설명한다. 동시에, 노드(N)와 링크(L)의 접속관계를 찾아가는 처리에 대해서도 설명한다. 예를 들어, 도 26에 도시한 바와 같이, 노드(N2)는 링크(L1, L2, L6 및 L7)의 4개와 접속하고 있다. 이와 같이, 각 노드(N2)를 중심으로 하여 4개의 링크(L1, L2, L6 및 L7)가 연결되어 있다. 또한, 노드 레코드(NR10)에는 노드(N2)에 관련된 정보가 기록된다(도 27 참조). 또한, 링크 레코드(LR12, LR13, LR31 및 LR32)에는 링크(L1, L2, L6 및 L7)에 관련된 정보가 기록된다(도 31 참조). 노드 레코드(NR10)의 노드 접속 정보(도 27 참조) 및 각 링크 레코드(LR12, LR13, LR31 및 LR32)의 링크 접속 정보(도 31 참조)에는 노드(N2)에 접속된 링크(L1, L2, L6 및 L7)를 찾아가기 위한 정보가 기록된다. 우선, 노드 레코드(NR10)에는 노드 접속 정보로서 노드(N2)에 접속된 최초의 링크(L)(지금, 가령 링크(L1)로 한다)가 기록된 링크 레코드(LR12)를 참조하기 위한 정보가 기록된다. 보다 구체적으로는 노드 접속 정보로서는 링크 테이블의 선두부터 링크 레코드(LR12)까지의 오프셋 어드레스를 기록해도 좋고, 링크 레코드(LR12)의 링크 레코드 번호를 기록해도 좋다. 여기에서, 링크 레코드 번호라는 것은 링크 테이블에서 최초의 링크 레코드(LR11)를 「0」으로 하고, 링크 레코드(LR12) 이후가 몇 번째에 기록되어 있는지를 특정하는 번호를 의미한다. 이상의 링크 레코드 번호를 도 31의 링크 레코드(LR)에 적용하면, 링크 레코드(LR11∼LR13)의 링크 레코드 번호는 「0」∼「3」이 된다. 또한, 링크 레코드(LR21∼LR23)의 링크 레코드 번호는 「4」∼「6」가 된다. 또한, 링크 코드(LR31∼LR33)의 링크 레코드 번호는 「7」∼「9」가 된다. 또한, 링크 레코드(LR41 및 LR42)의 링크 레코드 번호는 「10」 및 「11」이 된다.
여기에서 주의를 요하는 것은 노드 접속 정보에는 동일한 유닛(U)내의 도로망의 접속을 찾아가는 경우에 한해, 오프셋 어드레스 및 링크 레코드 번호가 기록된다. 동일하게 링크 접속 정보에는 동일한 유닛(U)내의 도로망의 접속을 찾아가는 경우에 한해, 오프셋 어드레스 및 노드 레코드 번호가 참조된다. 상세하게는 도 37 및 도 38을 참조하여 설명하지만, 어느 유닛(U) 및 인접 유닛(NU)의 경계에 걸치는 도로망의 접속을 찾아가는 경우에는 오프셋 어드레스 및 링크 레코드번호는 참조되지 않는다.
도 32의 예에서는 노드 레코드(NR10)의 노드 접속 정보에는 상기 노드 레코드(NR10)로부터 링크 테이블의 링크 레코드(LR12)를 참조 가능하도록 상기 링크 레코드(LR12)까지의 오프셋 어드레스 또는 상기 링크 레코드(LR12)의 링크 레코드 번호가 기록된다. 또한, 도 32의 예에서는 링크 레코드(LR12)로부터는 링크 레코드(LR31)가 참조되므로, 링크 레코드(LR12)의 링크 접속 정보에는 링크(L1)와 접속하는 다른 링크(L6)를 참조 가능하도록 상기 링크 레코드(LR31)로의 오프셋 어드레스 또는 상기 링크 레코드(LR31)의 링크 레코드 번호가 기록된다. 이러한 노드 레코드(NR10)의 노드 접속 정보 및 링크 레코드(LR12)의 링크 접속 정보에 의해 링크(L1)는 노드(N2)를 기점으로 하여 링크(L6)와 접속하고 있는 것을 알 수 있다.
여기에서, 주의를 요하는 것은 링크 레코드(LR12)의 링크 접속 정보로서는 링크 레코드 번호나 오프셋 어드레스 뿐만 아니라, 상기 링크 접속 정보가 다른 링크(L)에 대해서임을 나타내는 플래그를 기록해 둔다.
또한, 주의를 요하는 것은 동일 도로 레코드(RR)내에 기록되는 링크(L)를 참조하기 위한 링크 접속 정보는 각 링크 레코드(LR)에는 기록되지 않는다. 동일한 도로 레코드(RR)에 속하는 링크(L)끼리는 링크 접속 정보를 참조하지 않아도 링크 레코드(LR)의 나열방법에 의해 찾아갈 수 있기 때문이다. 즉, 도로 레코드(RR1)에서 링크 레코드(LR11)와 링크 레코드(LR12)는 연속하는 어드레스 영역에 나열되어 기록되므로, 링크(L1 및 L2)는 서로 접속되어 있다고 판단할 수 있다. 동일하게 도로 레코드(RR3)에서 링크 레코드(LR31 및 LR32)는 연속 어드레스 영역에 나열되어 기록되므로, 링크(L6)와 링크(L7)는 서로 접속되어 있다고 판단할 수 있다.
이제, 링크 레코드(LR12)의 다음에 참조되는 링크 레코드(LR31)에 기록된 링크(L6)는 도로 레코드(RR1) 이외에 구분된 링크(L)와는 접속되어 있지 않다. 그 때문에, 링크 레코드(LR31)의 링크 접속 정보로서는 링크(L1, L2, L6 및 L7)의 중심에 위치하는 노드(N2)가 기록된 노드 레코드(NR10)를 참조 가능한 정보가 기록된다. 링크 레코드(LR31)의 링크 접속 정보로서도 노드 레코드(NR10)으로의 오프셋 어드레스 또는 상기 노드 레코드(NR10)의 노드 레코드 번호가 사용된다.
여기에서, 주의를 요하는 것은 링크 레코드(LR31)의 링크 접속 정보로서는 노드 레코드(NR10)의 노드 레코드 번호 또는 오프셋 어드레스 뿐만 아니라, 상기 링크 접속 정보가 노드 테이블(NR)에 대해서 설정되어 있는 것을 나타내는 플래그도 기록된다.
이상과 같이, 각 노드 레코드(NR)에는 최초로 접속하는 링크(L)로의 노드 접속 정보만을 기록하고, 각 링크 레코드(LR)에는 그곳에 기록되는 링크(L)에 접속하는 다른 도로 레코드(RR)내의 링크(L)로의 링크 접속 정보 또는 기점이 된 노드(N)가 기록되는 노드 레코드(NR)로의 링크 접속 정보를 기록함으로써 각 노드(N)를 기점으로 한 링크(L)의 접속을 찾아갈 수 있다.
「유닛 헤더의 데이터 구조」
이제, 다시 도 7을 참조하여 유닛 헤더의 데이터 구조에 대해서 상세하게 설명한다. 유닛 헤더에는 지도파일(CF)의 유닛 데이터의 관리 정보가 기록된다. 유닛 헤더는 적어도 유닛 ID, 버전 코드 및 유닛 데이터를 구성하는 8종류의 테이블의 데이터 사이즈로 구성된다. 유닛 ID는 상기 지도파일(CF)에 의해 표시되는 유닛(U)을 일의적으로 특정할 수 있는 식별 번호이다. 보다 구체적으로는 유닛 ID는 유닛(U)의 레벨(L) 및 유닛(U)의 부자관계와 인접관계를 특정할 수 있는 번호이고, 지도파일(CF)의 패스명과 서로 교환할 수 있는 것이 바람직하다. 예를 들어, 유닛 ID를 32비트(4바이트)의 코드로 표현하는 것으로 하고, MSB부터 2비트를 예약 비트로 하고, 차례로 유닛 레벨(L)을 2비트, 레벨 「3」의 경도방향의 분할위치(X3)를 5비트, 레벨 「3」의 위도방향의 분할위치(Y3)를 5비트, 레벨 「2」의 경도방향의 분할위치(X2)를 3비트, 레벨 「2」의 위도방향의 분할위치(Y2)를 3비트, 레벨 「1」의 경도방향의 분할위치(X1)를 3비트, 레벨 「1」의 위도방향의 분할위치(Y1)를 3비트, 레벨 「0」의 경도방향의 분할위치(X0)를 3비트, 레벨 「0」의 위도방향의 분할위치(Y0)를 3비트로 나타낸다. 여기에서, 레벨 「3」의 경도방향의 분할위치(X3)는 유닛(U)이 레벨 「3」에 속하는 것으로 한 경우에 동경방향으로 세어 몇 번째(기산점은 경도 0도)에 위치하는지를 나타내는 수이다. 레벨 「3」의 위도 방향의 분할위치(Y3)는 유닛(U)이 레벨 「3」에 속하는 것으로 한 경우에 북위방향으로 세어 몇 번째(기산점은 북위 0도)에 위치하는지를 나타내는 수이다. 레벨 「2」의 경도방향의 분할위치(X2)는 유닛(U)이 레벨 「2」에 속하는 것으로 한 경우에 동경방향으로 세어 몇 번째(기산점은 레벨 「3」의 유닛(U)의 왼쪽 아래)에 위치하는지를 나타내는 수이다. 레벨 「2」의 위도방향의 분할위치(Y2)는 유닛(U)이 레벨 「2」에 속하는 것으로 한 경우에 북위방향으로 세어 몇 번째(기산점은 레벨 「3」의 유닛(U)의 왼쪽 아래)에 위치하는지를 나타내는 수이다. 레벨 「1」의 경도방향의 분할위치(X1)는 유닛(U)이 레벨 「1」에 속하는 것으로 한 경우에 동경방향으로 세어 몇 번째(기산점은 레벨 「2」의 유닛(U)의 왼쪽 아래)에 위치하는지를 나타내는 수이다. 레벨 「1」의 위도방향의 분할위치(Y1)는 유닛(U)이 레벨 「1」에 속하는 것으로 한 경우에 북위방향으로 세어 몇 번째(기산점은 레벨 「2」의 유닛(U)의 왼쪽 아래)에 위치하는지를 나타내는 수이다. 레벨 「0」의 경도방향의 분할위치(X0)는 유닛(U)이 레벨 「0」에 속하는 것으로 한 경우에 동경방향으로 세어 몇 번째(기산점은 레벨 「1」의 유닛(U)의 왼쪽 아래)에 위치하는지를 나타내는 수이다. 레벨 「0」의 위도방향의 분할위치(Y0)는 유닛(U)이 레벨 「0」에 속하는 것으로 한 경우에 북위방향으로 세어 몇 번째(기산점은 레벨 「1」의 유닛(U)의 왼쪽 아래)에 위치하는지를 나타내는 수이다.
예를 들어, 도 4에 도시한 레벨 「0」의 유닛(U0)의 패스명은 「¥MAP¥D1606¥D0401¥D0503¥M0201.map」이므로, 상술한 L=0, X3=16, Y3=6, X2=4, Y2=1, X1=5, Y1=3, X0=2, Y0=1이 된다. 이 경우에, 유닛(U0)의 유닛 ID는 135928529(10진수 표기)가 된다. 이상으로부터 밝혀진 바와 같이 지도파일(CF)의 패스명으로부터 유닛 ID를 일의적으로 특정할 수 있고, 반대로 유닛 ID로부터 패스명을 일의적으로 특정할 수 있다.
또한, 버전코드는 지도파일(CF)(유닛(U))의 버전을 나타내기 위한 식별 코드이고, 예를 들어 상기 유닛의 포맷 버전을 나타내는 코드를 2바이트, 상기 유닛의 콘텐츠 버전을 나타내는 코드를 2바이트 등으로 기술한 합계 4바이트의 코드로 나타내는 것으로 한다. 이 버전 코드는 센터국(2)으로부터 어느 유닛 ID의 지도파일(CF)이 단말장치(1)에 다운로드되었을 때에 단말장치(1)의 제 1 기억장치(19)에 이미 저장되어 있는 동일 유닛ID의 지도파일(CF)과 치환되는지의 여부의 판단 등에 사용된다. 또한, 이 때의 상세한 처리에 대해서는 후술한다.
또한, 각 테이블의 데이터 사이즈에는 지도파일(CF)을 구성하는 각 테이블의 데이터 사이즈가 기록되어 있고, 각각은 예를 들어 2바이트로 표시된다. 각 테이블의 데이터 사이즈를 차례로 가산해 감으로써 각 테이블이 저장되어 있는, 지도파일(CF)의 선두로부터의 오프셋 어드레스가 산출 가능해진다. 또한, 각 테이블의 데이터 사이즈로서는 기본 배경 테이블의 데이터 사이즈, 상세 배경 테이블의 데이터 사이즈, 기본 문자 기호 테이블의 데이터 사이즈, 상세 문자 기호 테이블의 데이터 사이즈, 제 1 노드 테이블의 데이터 사이즈, 제 1 링크 테이블의 데이터 사이즈, 제 2 노드 테이블의 데이터 사이즈, 제 2 링크 테이블의 데이터 사이즈가 나열된다. 각각의 테이블의 내용에 대해서는 상술한 바와 같다.
이상, 지도파일(CF)의 상세한 데이터 구조에 대해서 설명했다. 다음에, 제 1 데이터베이스(111)로부터 지도파일(CF)을 판독할 때의 단말장치(1)의 동작에 대해서 도면을 참조하여 설명한다.
「판독처리」
도 1을 참조하여 설명한 바와 같이 본 실시형태의 단말장치(1)는 전형적으로는 카 네비게이션 시스템이다. 주지와 같이 맵 매칭, 경로탐색 또는 경로안내 등의 처리가 실행된다. 이하에는 이 처리 중 경로탐색처리에 관련하여 지도파일(CF)을 판독하는 처리, 어느 유닛(U)과 인접 유닛(NU)에 걸치는 도로의 접속을 찾아가는 처리 및 계층간에서의 노드(N)와 링크(L)의 연결을 실시하는 처리에 대해서 상세하게 설명한다. 또한, 이하에서는 출발지 및 목적지 사이의 최단루트를 찾는 처리 그 자체에 대해서는 본원 발명의 포인트는 아니므로 특별히 설명하지 않는다.
도 33은 경로탐색처리의 개념을 도시한 도면이다. 도 33에 도시한 바와 같이 최단루트를 찾는 처리에서는 출발지(SP)측과 목적지(DP)측의 양방향으로부터 탐색이 확대된다. 또한, 경로탐색처리에서는 하위 계층부터 상위계층까지의 복수계층의 지도파일(CF)이 사용된다. 이 때, 출발지(SP) 및 목적지(DP) 주변에서는 상세한 도로망을 나타내는 하위계층의 지도파일(CF)을 사용하여 최단루트가 탐색된다. 한편, 출발지(SP) 및 목적지(DP) 주변 이외에서는 개략적인 도로망을 나타내는 상위계층의 지도파일(CF)이 사용된다. 이상의 도 33에 도시한 경로탐색처리에서는 소위 쌍방향 계층별 탐색의 수법이 사용된다. 또한, 지도파일(CF)을 사용하여 출발지(SP)로부터 목적지(DP)로의 최단루트를 찾는 경우에는 주지의 다이크스트라법(Dijkstra method) 등이 사용된다. 또한, 다이크스트라법에 대해서는 본원 발명의 포인트가 아니고, 또한 주지의 기술이므로 더 이상 설명하지 않는다.
이하, 도 34의 플로우차트를 참조하여 단말장치(1)에서 실행되는 쌍방향 계층별 탐색의 처리수순을 상세하게 설명한다. 우선, 쌍방향 계층별 탐색에서는 단말장치(1)의 출발지(SP) 및 목적지(DP)의 설정이 실행된다(스텝(S101, S102)). 스텝(S101 및 S102)에서 출발지(SP) 및 목적지(DP)는 출력장치(110)의 디스플레이에 표시되는 메뉴에 따라서 단말장치(1)의 사용자가 입력장치(11)를 조작함으로써 설정된다. 여기에서, 최근의 카 네비게이션 시스템에서는 출발지(SP) 및 목적지(DP)는 일반적으로 주소, 전화번호, 지명 또는 시설명칭 등을 사용하여 설정된다. 설정된 출발지(SP) 및 목적지(DP)를 특정하는 정보는 입력장치(11)로부터 데이터 처리부(13)에 송신된다.
스텝(S102)이 종료하면, 데이터 처리부(13)는 판독/기록제어부(18)와 협동하여 경로탐색처리에 필요한 지도파일(CF)을 제 1 기억장치(19)로부터 주기억(도시하지 않음)에 차례로 읽어 들인다(스텝(S103)).
상술한 바와 같이 제 1 기억장치(19)에 저장된 각 지도파일(CF)은 도 2 등에 도시한 바와 같이 지도를 장방형 영역으로 분할한 유닛(U)을 단위로 하여 디지털 데이터화된다. 또한, 각 지도파일(CF)은 파일 시스템에 의해 관리된다. 파일 시스템은 제 1 기억장치(19)의 논리영역이 트리 구조를 취하도록 디렉토리를 작성한다. 이에 의해, 각 지도파일(CF)이 저장되는 논리영역은 루트, 파일명 및 그 사이에 개재하는 서브디렉토리명에 의해 나타나는 패스에 의해 일의적으로 특정된다. 또한, 본 실시형태의 트리구조 및 파일명은 상술한 바와 같이 유닛(U) 끼리의 부자관계 및 인접관계를 특정한다. 파일 시스템을 구성하는 데이터 처리부(13) 및 판독/기록제어부(18)는 최초의 스텝(S103)에서 입력장치(11)로부터 송신되어 오는 출발지(SP) 주변을 나타내는 지도파일(CF)을 제 1 기억장치(19)로부터 판독하기 위해서는 상기 지도파일(CF)의 패스명을 구하지 않으면 안된다.
여기에서, 도 35는 도 34의 스텝(S103)의 상세한 처리수순을 나타내는 플로우차트이다. 도 35의 처리를 간단하게 설명하면, 데이터 처리부(13)가 읽어들일 지도파일(CF)의 레벨(계층) 및 대표점이 되는 지점의 좌표정보로부터 상기 지도파일(CF)의 패스명을 구한다. 그리고, 판독/기록제어부(18)는 데이터 처리부(13)에 의해 구해진 패스명을 기초로 제 1 기억장치(19)로부터 지도파일(CF)을 판독한다. 이하, 도 35의 플로우차트를 참조하여 도 4 및 도 5에 도시한 레벨 「0」의 유닛(U0)을 나타내는 지도파일(CF)(「¥M0201.map」)을 판독할 때의 처리수순을 설명한다.
여기에서, 대표점이라는 것은 판독할 지도파일(CF)이 커버하는 범위에 포함되는 하나의 지점을 의미한다. 이하의 설명에서, 경도좌표(LON0) 및위도좌표(LAT0)는 유닛(U0)의 대표점의 경도방향의 위치를 나타내는 좌표 및 위도방향의 위치를 나타내는 좌표가 된다. 본 실시형태에서, 경도좌표(LON0) 및 위도좌표(LAT0)는 동경 132도 39분 20초 및 북위 32도 55분 37초가 된다.
또한, 스텝(S103)의 처리에는 몇 개의 매개변수가 필요하게 된다. 이하의 설명에서 경도폭(W3)은 레벨 「3」에 속하는 각 유닛(U)이 커버하는 장방형 영역의 경도방향을 따르는 변의 길이를 의미한다. 위도폭(H3)은 레벨 「3」에 속하는 각 유닛(U)이 커버하는 장방형 영역의 위도방향을 따르는 변의 길이를 의미한다. 본 실시형태의 경우, 도 2 및 도 3에서 설명한 바와 같이, 레벨 「3」의 장방형 영역이 약 640㎞ 사방인 경우에는 경도폭(W3) 및 위도폭(H3)은 28800초(8도) 및 19200초(5도 20분)이다. 경도폭(W2)은 레벨 「2」에 속하는 각 유닛(U)이 커버하는 장방형 영역의 경도방향을 따르는 변의 길이를 의미한다. 위도폭(H2)은 레벨「2」에 속하는 각 유닛(U)이 커버하는 장방형 영역의 위도방향을 따르는 변의 길이를 의미한다. 레벨 「2」의 장방형 영역이 약 80㎞ 사방인 경우에는 경도폭(W2) 및 위도폭(H2)은 3600초(1도) 및 2400초(40분)이다. 경도폭(W1)은 레벨 「1」에 속하는 각 유닛(U)이 커버하는 장방형 영역의 경도방향을 따르는 변의 길이를 의미한다. 위도폭(H1)은 레벨 「1」에 속하는 각 유닛(U)이 커버하는 장방형 영역의 위도방향을 따르는 변의 길이를 의미한다. 레벨 「1」의 장방형 영역이 약 10㎞사방인 경우에는 경도폭(W1) 및 위도폭(H1)은 450초(7분 30초) 및 300초(5분)이다. 경도폭(W0)은 레벨 「0」에 속하는 각 유닛(U)이 커버하는 장방형 영역의 경도방향을 따르는 변의 길이를 의미한다. 위도폭(HO)은 레벨 「0」에 속하는 각 유닛(U)이 커버하는 장방형 영역의 위도방향을 따르는 변의 길이를 의미한다. 레벨 「0」의 장방형 영역이 약 1.2㎞ 사방인 경우에는 경도폭(W0) 및 위도폭(HO)은 56.25초 및 37.5초이다.
이제, 데이터 처리부(13)는 먼저 대표점의 경도좌표(LON0) 및 위도(LAT0)를 특정하고(스텝(S201)), 읽어들인 지도파일(CF)의 레벨(L)(유닛(U0)의 지도파일(CF)을 읽어 들이는 경우, L=0)를 특정한다(스텝(S202)). 여기에서, 스텝(S201 및 S202)은 쌍방향 계층별 탐색에서 일반적으로 실행되는 처리이므로, 여기에서는 상세하게 설명하지 않는다.
다음에, 데이터 처리부(13)는 스텝(S203)으로 진행하고, 대표점의 경도좌표(LON0)를 레벨 「3」의 위도폭(H3)으로 나누었을 때의 몫(DLAT3) 및 상기 대표점의 위도(LAT0)를 레벨 「3」의 경도폭(W3)으로 나누었을 때의 몫(DLON3)을 산출한다. 이제, 경도폭(W3)=28800초(8도), 위도폭(H3)=19200초(5도 20분), 경도좌표(LON0)=동경 132도 39분 20초, 위도좌표(LAT0)=북위 32도 55분 37초이므로, 몫(DLON3)=16, 몫(DLAT3)=6이 된다. 데이터 처리부(13)는 산출된 몫(DLON3) 및 몫(DLAT3)을 차례로 나열하여 4자리의 숫자를 작성한다. 금회 작성되는 4자리의 숫자는 「1606」이다. 여기에서 몫(DLON3) 및/또는 몫(DLAT3)이 1자리로 되는 경우에는 아래에서부터 2자리째에 「0」을 붙인다.
데이터 처리부(13)는 작성한 4자리 숫자의 선두에 디렉토리의 식별자 「¥」 및 파일명의 머리문자를 정의하는 「M」을 부가하고, 또한 그 말미에 파일명의 확장자 「.map」를 부가한다. 이에 의해, 데이터 처리부(13)는 대표점의 경도좌표(LON0) 및 위도좌표(LAT0)로부터 읽어들인 지도파일(CF)(유닛(U0)의 것)의 파일명(금회의 경우, 「¥M1606.map」)을 도출한다.
또한, 데이터 처리부(13)는 작성한 4자리 숫자의 선두에 디렉토리의 식별자 「¥」 및 서브디렉토리명의 머리문자를 정의하는 「D」를 부가한다. 이에 의해, 데이터 처리부(13)는 대표점의 경도좌표(LON0) 및 위도좌표(LAT0)로부터 읽어들일 지도파일(CF)이 저장된 서브디렉토리명(금회의 경우 「¥D1606」)을 도출한다(스텝(S203)).
다음에, 데이터 처리부(13)는 스텝(S202)에서 지정된 레벨(L)이 「3」인지의 여부를 판단한다(스텝(S204)). 레벨(L)이 「3」인 경우, 데이터 처리부(13)는 스텝(S205)으로 진행하고, 루트(「¥MAP」)의 뒤에 스텝(S203)에서 도출된 파일명(「¥M1606.map」)을 부가하여 패스명을 도출한다. 따라서, 패스명은 「¥MAP¥M1606.map」이 된다. 데이터 처리부(13)는 도출한 패스명을 판독/기록제어부(18)에 출력한다(스텝(S205)). 판독/기록제어부(18)는 입력된 패스명(「¥MAP¥M1606.map」)에 따라서 지도파일(CF)을 제 1 기억장치(19)내의 제 1 데이터베이스(111)로부터 판독한다. 판독/기록제어부(18)는 판독한 지도파일(CF)을 데이터 처리부(13) 내의 주기억(도시하지 않음)에 전송한다. 이와 같이 하여 데이터 처리부(13)는 지도파일(CF)을 제 1 기억장치(19)로부터 주기억에 읽어 들인다(스텝( S206)).
그런데, 상술한 바와 같이 스텝(S202)에서 지정된 레벨은 「0」이므로, 데이터 처리부(13)는 스텝(S204)에서 레벨(L)이 「3」이 아니라고 판단하여 스텝(S207)으로 진행한다. 데이터 처리부(13)는 스텝(S203)에서 도출한 몫(DLON3)의 나머지(RLON3)를 산출한 후, 상기 나머지(RLON3)를 레벨 「2」의 경도폭(W2)으로 나누었을 때의 몫(DLON2)을 산출한다. 또한, 데이터 처리부(13)는 스텝(S203)에서 도출한 몫(DLAT3)의 나머지(RLAT3)를 산출한 후, 상기 나머지(RLAT3)를 레벨 「2」의 위도폭(H2)으로 나누었을 때의 몫(DLAT2)을 산출한다. 이제, 상술한 수치를 사용한 경우, 몫(DLON2) 및 몫(DLAT2)은 DLON2=4 및 DLAT2=1이 된다. 데이터 처리부(13)는 산출된 몫(DLON2) 및 몫(DLAT2)을 차례로 나열하여 4자리 숫자를 작성한다. 이번에 작성되는 4자리 숫자는 「0401」이다. 여기에서, 몫(DLON2) 및/또는 몫(DLAT2)이 1자리가 되는 경우에는 2자리째에 「0」을 붙인다.
데이터 처리부(13)는 작성한 4자리 숫자의 선두에 디렉토리의 식별자「¥」 및 파일명의 머리문자를 정의하는 「M」을 부가하고, 또한 그 말미에 파일명의 확장자 「.map」를 부가한다. 이에 의해, 데이터 처리부(13)는 대표점의 경도좌표(LON0) 및 위도좌표(LAT0)로부터 읽어들인 지도파일(CF)의 파일명(금회 경우 「¥M0401.map」)을 도출한다.
또한, 데이터 처리부(13)는 작성한 4자리 숫자의 선두에 디렉토리의 식별자「¥」 및 서브디렉토리명의 머리문자를 정의하는「D」를 부가한다. 이에 의해, 데이터 처리부(13)는 대표점의 경도좌표(LON0) 및 위도좌표(LAT0)로부터 읽어들인 지도파일(CF)(유닛(U0)의 것)이 저장된 서브디렉토리명(금회의 경우 「¥D0401」)을 도출한다(스텝(S207)).
다음에, 데이터 처리부(13)는 스텝(S202)에서 지정된 레벨(L)이 「2」인지의 여부를 판단한다(스텝(S208)). 레벨(L)이 「2」인 경우, 데이터 처리부(13)는 스텝(S209)으로 진행하고, 루트(「¥MAP」)의 뒤에 스텝(S203)에서 도출한 서브디렉토리명(「¥D1606」) 및 스텝(S207)에서 도출한 파일명(「¥M0401.map」)을 부가하여 패스명을 도출한다. 따라서, 패스명은 「¥MAP¥D1606¥M0401.map」이 된다. 데이터 처리부(13)는 도출한 패스명을 판독/기록제어부(18)에 출력한다(스텝(S209)). 판독/기록제어부(18)는 입력된 패스명(「¥MAP¥D1606¥M0401.map」)에 따라서 지도파일(CF)을 제 1 기억장치(19) 내의 제 1 데이터베이스(111)로부터 판독한다. 판독/기록제어부(18)는 판독한 지도파일(CF)을 데이터 처리부(13)내의 주기억(도시하지 않음)에 전송한다. 이와 같이 하여, 데이터 처리부(13)는 지도파일(CF)을 제 1 기억장치(19)로부터 주기억에 읽어 들인다(스텝(S206)).
상술한 바와 같이, 스텝(S202)에서 지정된 레벨은 「0」이므로, 데이터 처리부(13)는 스텝(S208)에서 레벨(L)이 「2」가 아니라고 판단하여 스텝(S210)으로 진행한다. 데이터 처리부(13)는 스텝(S207)에서 도출한 몫(DLON2)의 나머지(RLON2)를 산출한 후, 상기 나머지(RLON2)를 레벨 「1」의 경도폭(W1)으로 나누었을 때의 몫(DLON1)을 산출한다. 또한, 데이터 처리부(13)는 스텝(S207)에서 도출한 몫(DLAT2)의 나머지(RLAT2)를 산출한 후, 상기 나머지(RLAT2)를 레벨 「1」의 위도폭(H1)으로 나누었을 때의 몫(DLAT1)을 산출한다. 이제, 상술한 수치를 사용한 경우, 몫(DLON1)및 몫(DLAT1)은 DLON1=5 및 DLON1=3이 된다. 데이터 처리부(13)는 산출된 몫(DLON1) 및 몫(DLAT1)을 차례로 나열하여 4자리 숫자를 작성한다. 이번에 작성되는 4자리 숫자는 「0503」이다. 여기에서, 몫(DLON1) 및/또는 몫(DLAT1)이 1자리가 되는 경우에는 2자리째에 「0」을 붙인다.
데이터 처리부(13)는 작성한 4자리 숫자의 선두에 디렉토리의 식별자 「¥」 및 파일명의 머리문자를 정의하는 「M」을 부가하고, 또한 그 말미에 파일명의 확장자 「.map」를 부가한다. 이에 의해, 데이터 처리부(13)는 대표점의 경도좌표(LON0) 및 위도좌표(LAT0)로부터 읽어 들일 지도파일(CF)의 파일명(「¥M0503.map」)을 도출한다.
또한, 데이터 처리부(13)는 작성한 4자리 숫자의 선두에 디렉토리의 식별자 「¥」 및 서브디렉토리명의 머리문자를 정의하는 「D」를 부가한다. 이에 의해 데이터 처리부(13)는 대표점의 경도좌표(LON0) 및 위도좌표(LAT0)로부터 읽어 들일 지도파일(CF)(유닛(U0)의 것)이 저장된 서브디렉토리명(금회의 경우 「¥D0503」)을 도출한다(스텝(S2010)).
다음에, 데이터 처리부(13)는 스텝(S202)에서 지정된 레벨(L)이 「1」인지의 여부를 판단한다(스텝(S2011)). 레벨(L)이 「1」인 경우, 데이터 처리부(13)는 스텝(S2012)으로 진행하고, 루트(「¥MAP」)의 뒤에 스텝(S203)에서 도출한 서브디렉토리명(「¥D1606」), 스텝(S207)에서 도출한 서브디렉토리명(「¥D0401」) 및 스텝(S210)에서 도출한 파일명(¥M0503.map)을 부가하여 패스명을 도출한다. 따라서, 패스명은 「¥MAP¥D1606¥D0401¥M0503.map」이 된다. 데이터 처리부(13)는 도출한 패스명을 판독/기록제어부(18)에 출력한다(스텝(S2012)). 판독/기록제어부(18)는 입력된 패스명(「¥MAP¥D1606¥D0401¥MO503.map」)에 따라서 지도파일(CF)을 제 1 기억장치(19)내의 제 1 데이터베이스(111)로부터 판독한다. 판독/기록제어부(18)는 판독한 지도파일(CF)을 데이터 처리부(13)내의 주기억(도시하지 않음)에 전송한다. 이와 같이 하여, 데이터 처리부(13)는 지도파일(CF)을 제 1 기억장치(19)로부터 주기억에 읽어 들인다(스텝(S206)).
상술한 바와 같이 스텝(S202)에서 지정된 레벨(L)은 「0」이므로, 데이터 처리부(13)는 스텝(S2011)에서 레벨(L)이 「1」이 아니라고 판단하여 스텝(S2013)으로 진행한다. 데이터 처리부(13)는 스텝(S210)에서 도출한 몫(DLON1)의 나머지(RLON1)를 산출한 후, 상기 나머지(RLAON1)을 레벨 「0」의 경도폭(W0)으로 나누었을 때의 몫(DLON0)을 산출한다. 또한, 데이터 처리부(13)는 스텝(S210)에서 도출한 몫(DLAT1)의 나머지(RLAT1)를 도출한 후, 상기 나머지(RLAT1)를 레벨 「0」의 위도폭(H0)으로 나누었을 때의 몫(DLAT0)을 산출한다. 이제, 상술한 수치를 사용한 경우, 몫(DLON0) 및 몫(DLAT0)은 DLON0=2 및 DLAT0=1이 된다. 데이터 처리부(13)는 산출된 몫(DLON0) 및 몫(DLAT0)을 차례로 나열하여 4자리 숫자를 작성한다. 이번에 작성되는 4자리 숫자는 「0201」이다. 여기에서, 몫(DLON0) 및/또는 몫(DLAT0)이 1자리가 되는 경우에는 2자리째에 「0」을 붙인다.
데이터 처리부(13)는 작성한 4자리 숫자의 선두에 디렉토리의 식별자 「¥」 및 파일명의 머리문자를 정의하는 「M」을 부가하고, 또한 그 말미에 파일명의 확장자 「.map」를 부가한다. 이에 의해, 데이터 처리부(13)는 대표점의 경도좌표(LON0) 및 위도좌표(LAT0)로부터 읽어 들일 지도파일(CF)의 파일명(금회의 경우, 「¥M0201.map」)을 도출한다(스텝(S2013)). 여기에서, 스텝(S2013)에서는 레벨(L)이 최하위층인 「0」이라고 자동적으로 판단할 수 있으므로, 데이터 처리부(13)는 서브디렉토리명을 도출하지 않는다.
다음에, 데이터 처리부(13)는 스텝(S2014)으로 진행하고, 루트(「¥MAP」)의 뒤에, 스텝(S203, S207 및 S210)에서 도출한 서브디렉토리명의 배열(「¥D1606¥D0401¥D0503」 및 스텝(S2013)에서 도출한 파일명(금회의 경우, 「¥M0201.map」)을 부가하여 패스명을 도출한다. 따라서, 패스명은 「¥MAP¥D1606¥D0401¥D0503¥M0201.map」가 된다. 데이터 처리부(13)는 도출한 패스명을 판독/기록제어부(18)에 출력한다(스텝(S2014)). 판독/기록제어부(18)는 입력된 패스명(「¥MAP¥D1606¥D0401¥M0503.map」)에 따라서 지도파일(CF)을 제 1 기억장치(19)내의 제 1 데이터베이스(111)로부터 판독한다. 판독/기록제어부(18)는 판독한 지도파일(CF)을 데이터 처리부(13)내의 주기억(도시하지 않음)에 전송한다. 이와 같이 하여, 데이터처리부(13)는 지도파일(CF)을 제 1 기억장치(19)로부터 주기억에 읽어들인다(스텝(S206)).
데이터 처리부(13)는 이상의 스텝(S206) 후에 도 35의 플로우차트로부터 빠져 도 34의 스텝(S104)으로 진행한다. 데이터 처리부(13)는 주기억상에 읽어 들인 지도파일(CF)을 사용하여 출발지(SP)측으로부터의 경로탐색처리를 실시한다(스텝(S104)). 여기에서, 주의를 요하는 것은 다이크스트라법 등의 수법은 주지의 사실이므로 그 상세한 설명을 생략한다. 다이크스트라법 등을 간단하게 설명하면, 지도파일(CF)내의 도로 네트워크의 접속을 찾아가면서 최단루트를 찾는 처리가 실시된다. 이러한 지도파일(CF) 내에서의 노드(N)와 링크(L)의 접속관계를 찾아가는 수순에 대해서는 도 32를 참조하여 상술한 바와 같다.
또한, 데이터 처리부(13)는 스텝(S102) 후에 스텝(S103)과 병행하여 스텝(S105)을 실행한다. 데이터 처리부(13)는 스텝(S102)에서 설정된 목적지(DP) 주변의 지도파일(CF)을 제 1 기억장치(19)로부터 자신의 내부에 갖는 주기억(도시하지 않음)에 읽어 들인다(스텝(S105)). 또한, 데이터 처리부(13)는 스텝(S105)에서 읽어 들인 지도파일(CF)을 사용하여 목적지(DP)측의 경로탐색처리를 실시한다(스텝 (S106)). 여기에서, 스텝(S105 및 S106)의 처리에 대해서는 스텝(S103) 및 스텝(S104)과 동일하므로 상세한 설명은 생략한다.
데이터 처리부(13)는 스텝(S104 및 S106)의 처리가 종료하면, 상기 스텝(S104 및 106)에서 사용된 지도파일(CF)의 계층에서의 탐색종료조건을 만족했는지의 여부의 판단을 실시한다(스텝(S107)). 스텝(S107)에서는 일반적으로 판독한 지도파일(CF)의 수 또는 탐색한 노드(N)의 수 등이 소정의 값에 달하고 있는지의 여부에 기초하여 탐색조건이 종료했는지의 여부가 판단된다. 스텝(S107)에서 탐색종료조건을 만족하고 있지 않다고 판단된 경우에는 데이터 처리부(13)는 스텝(S103 및 S105)으로 돌아가고, 출발지(SP)측 및 목적지(DP)측의 쌍방으로부터의 탐색처리에서 이미 읽어 들여져 있는 지도파일(CF)에 인접하는 지도파일(CF)을 읽어 들인다. 여기에서, 이미 읽어 들여져 있는 지도파일(CF)이 유닛(U)의 지도를 나타낸다고 하면, 인접하는 지도파일(CF)은 인접 유닛(NU)(도 26 참조)의 지도를 나타내게 된다. 데이터 처리부(13)는 새로운 대표점의 경도좌표(LON) 및 위도좌표(LAT)를 구하여, 인접하는 지도파일(CF)의 패스명을 도출하고, 상기 패스명에 의해 특정되는 지도파일(CF)을 제 1 기억장치(19)로부터 주기억에 읽어 들인다.
여기에서 도 36에 도시한 바와 같이 인접 유닛(NU)을 결정하기 위한 새로운 대표점의 위치는 도로망의 접속을 찾아가는 링크(L)가 어느 유닛 경계상의 인접 노드(상세하게는 도 26을 참조)를 경유하여 상기 인접 유닛(NU)내의 링크(L)와 접속하는지에 따라서 다르다. 보다 구체적으로 설명하면, 도 36의 링크(L11)는 유닛(U)의 경계(장방형)의 상변상에 위치하는 인접 노드(N12)를 경유하여 인접 유닛(NU1)의 어느 링크(L)와 접속한다. 이 때문에, 유닛(U)의 대표점(P)의 위도좌표(LAT)에 대하여 상기 유닛(U)이 속하는 레벨(L)의 위도폭(H)을 가산한 위도좌표(LAT1)를 가진 지점이 새로운 대표점(P1)으로 정해진다.
한편, 도 36의 링크(L12)는 유닛(U)의 경계(장방형)의 우변상에 위치하는 인접 노드(N13)를 경유하여 인접 유닛(NU2)내의 어느 링크(L)와 접속한다. 이 때문에, 유닛(U)의 대표점(P)의 경도좌표(LON)에 대하여 상기 유닛(U)이 속하는 레벨(L)의 경도폭(W)을 가산한 경도좌표(LON2)를 가진 지점이 새로운 대표점(P2)으로 정해진다.
2회째 이후의 스텝(103 및 S105)에서 데이터 처리부(13)는 도 36을 참조하여 설명한 바와 같이 하여 구해진 새로운 대표점에 기초하여 상기 대표점을 포함하는 범위를 나타내는 지도의 지도파일(CF)을 읽어 들인다. 또한, 이 때의 처리수순은 상술한 바와 같다. 다음의 스텝(S104 및 106)에서 데이터 처리부(13)는 스텝(S103 및 S105)에서 읽어 들인 지도파일(CF)을 사용하여 탐색처리를 실시한다. 이러한 탐색처리는 전회 읽어 들인 지도파일(CF)로부터 금회 읽어 들인 것으로, 즉 유닛(U)과 인접 유닛(NU)의 경계를 넘어 도로망의 접속을 찾아가는 것을 의미하고 있다.
그런데, 배경 기술에 기재한 기술에서는 유닛(U) 및 인접 유닛(NU)의 경계를 넘는 경우라도 도로망의 접속을 찾아갈 수 있도록 각 지도파일의 인접 노드의 레코드에 인접 유닛(NU)의 인접 노드를 특정하는 번호 또는 오프셋 어드레스 등이 기록되어 있었다. 그러나, 이와 같은 지도파일의 내부 데이터 구조에 관한 정보를 상기 유닛에 기록하면, 인접 유닛(NU)을 나타내는 지도파일이 갱신된 경우, 상기 번호 또는 오프셋 어드레스가 바뀌는 경우가 있다. 따라서, 하나의 지도파일이 갱신됨으로써, 그 주위의 모든 인접 유닛(NU)을 나타내는 지도파일이 갱신될 필요가 발생할 우려가 있다는 문제점이 있었다. 이러한 문제점을 해소하기 위해, 본 실시형태의 각 지도파일(CF)에는 인접 유닛(NU)의 내부 데이터 구조에 직접 관계하는 정보는 기록되어 있지 않고, 데이터 처리부(13)는 노드(N)의 좌표 정보 및/또는 링크(L)의 속성정보를 사용하여 인접 유닛(NU)의 인접 노드(N)를 찾아가는 처리를 실행한다.
이하, 도 37 및 도 38의 2개의 도면을 참조하여 도 34의 스텝(S104 또는 S106)에서 데이터 처리부(13)가 유닛(U)과 인접 유닛(NU)의 경계를 넘어 도로망의 접속을 찾아가는 처리에 대해서 상세하게 설명한다.
도 37은 서로 인접하여 만나는 4개의 유닛(U1∼U4)을 나열했을 때 구성되는 도로망을 도시하고 있다. 유닛(U1)에 포함되는 도로망은 4개의 노드(N10∼N13)와, 3개의 링크(L10∼L12)로 구성된다. 유닛(U1)에서 3개의 노드(N10, N12 및 N13)(●표 참조)는 인접 노드로서 유닛(U1)의 경계상에 위치한다. 또한, 유닛(U2)에 포함되는 도로망은 5개의 노드(N20∼N24)와 4개의 링크(L20∼L23)로 구성된다. 유닛(U2)에서 4개의 노드(N20 및 N22∼24)(●표 참조)는 인접 노드로서, 유닛(U2)의 경계상에 위치한다. 또한, 유닛(U3)에 포함되는 도로망은 4개의 노드(N30∼N33)와 3개의 링크(L30∼L32)로 구성된다. 유닛(U3)에서 노드(N30, N32 및 N33)(●표 참조)가 인접 노드이고, 유닛(U3)의 경계상에 위치한다. 또한, 유닛(U4)에 포함되는 도로망은 4개의 노드(N40∼N43)와 3개의 링크(L40∼L42)로 구성된다. 3개의 노드(N40∼N43)(●표 참조)는 인접 노드로서, 유닛(U4)의 경계상에 위치한다.
또한, 도 37에서 노드(N13 및 N20)가 접속되고, 노드(N12 및 N30)가 접속되고, 노드(N24 및 N43)가 접속되고, 또한 노드(N33 및 N40)가 접속되며 이에 의해하나의 도로망이 구성된다.
이상의 도 37의 도로망에서 링크(L12)는 인접 노드(N13 및 N20)를 경유하여 링크(L20)와 연결되어 있다. 상술한 바와 같이 경로탐색처리에서 데이터 처리부(13)는 인접 유닛(NU)을 나타내는 지도파일(CF)을 차례로 읽어 들여, 목적지(DP) 또는 출발지(SP)의 방향으로 탐색을 확장해 간다. 이를 위해서 데이터 처리부(13)는 어느 유닛(U) 및 인접 유닛(NU)의 경계를 넘는 2개의 링크(L)의 접속관계를 찾아갈 필요가 있다. 그래서, 우선, 데이터 처리부(13)는 주기억상에 읽어 들인 유닛(U)(즉, 유닛(U1))의 지도파일(CF)(보다 구체적으로는 링크 레코드(RR)(도 30 및 도 31 참조))로부터 유닛(U1)으로부터 유닛(U2)으로 향하는 링크(L12)의 링크 속성을 추출한다(도 38; 스텝(S301)). 이하에서는 유닛(U1)의 경계를 향하는 링크(L12)를 탈출링크(L12)라고 부르기로 한다.
다음에, 데이터 처리부(13)는 탈출링크(L12)의 접속처 정보(노드 레코드 번호 또는 오프셋 어드레스)를 참조하여, 지도파일(CF)(보다 구체적으로는 제 1 또는 제 2 노드 테이블)로부터 상기 탈출링크(L12)에 접속된 인접 노드(N13)의 노드 레코드(NR)(도 27 참조)를 찾아낸다. 그 후, 데이터 처리부(13)는 찾아낸 노드 레코드(NR)로부터 인접 노드(N13)의 노드 좌표를 추출한다(스텝(S302)). 이하에서는 탈출링크(L12)에 접속된 인접 노드(N13)를 탈출노드(N13)라고 부르기로 한다.
다음에, 데이터 처리부(13)는 주기억상에 읽어 들여져 있는 인접 유닛(NU)(즉, 유닛(U2))의 지도파일(CF)(보다 구체적으로는 제 1 또는 제 2 노드 테이블)로부터 노드 좌표를 하나씩 추출한다(스텝(S303)). 데이터 처리부(13)는 스텝(S302)에서 추출한 탈출 노드(N13)의 노드 좌표와 스텝(S303)에서 추출한 노드 좌표의 차분값을 산출하고, 상기 차분값이 소정의 임계값 이하인지의 여부를 판단한다(스텝(S304)). 여기에서 도 29를 참조하여 설명한 바와 같이, 본 실시형태에서는 노드 좌표는 정규화된 값으로 기록되어 있다. 상기 소정의 임계값으로서는 정규화된 좌표값의 폭에 따라 다르지만, 「1」∼「2」정도의 값이 바람직하다. 데이터 처리부(13)는 스텝(S304)의 조건을 만족할 때까지, 스텝(S303 및 S304)을 반복 실행한다. 단, 데이터 처리부(13)는 스텝(S303)을 실행할 때마다 과거에 추출한 것과는 다른 노드 좌표를 추출한다. 여기에서, 스텝(S304)의 조건을 만족한다는 것은 스텝(S303)에서 추출한 노드 좌표를 갖는 노드(N)가 탈출노드(N13)와 동일한 위치를 나타내고 있는 것이 된다. 즉, 제어부(13)는 스텝(S303 및 S304)을 반복하여 실행함으로써, 탈출노드(N13)와 거의 동일한 위치를 갖는 인접 노드(N20)를 찾아낼 수 있다. 이하에서는 찾아낸 인접 노드(N20)를 진입노드라고 부르기로 한다.
여기에서, 일반적으로 스텝(S303)에서는 노드 레코드 번호(도 28 참조)의 순서에 따라서 노드좌표가 하나씩 차례로 추출된다. 본 실시형태에서는 도 26 및 도 28을 참조하여 설명한 바와 같이 제 1 또는 제 2 노드 테이블에서 인접 노드(N)의 노드 레코드(NR)는 비인접 레코드(N)의 노드 레코드(NR)의 앞에 기록되어 있다. 이에 의해, 데이터 처리부(13)는 비인접 노드(N)의 노드 레코드(NR)로부터 노드 좌표를 추출하지 않고 진입노드를 발견해 낼 수 있다. 이에 의해, 데이터 처리부(13)가 진입노드를 검색하는 처리의 부하를 최소한으로 억제할 수 있다. 즉, 데이터 처리부(13)는 인접 유닛(NU)의 지도파일(CF)에 기록된 제 1 및 제 2 노드 테이블 내에 나열되는 모든 노드 레코드(NR)를 검색하지 않아도 상기 제 1 또는 제 2 노드 테이블의 선두에서부터 인접 노드의 수만큼 노드 레코드(NR)를 검색하면 반드시 진입 노드를 발견해 낼 수 있다. 이와 같이, 본 실시형태에서의 노드 레코드(NR)의 나열방식은 진입노드를 검색하는 처리의 고속화에도 기여한다.
또한, 인접 노드의 노드 레코드(NR)는 도 26을 참조하여 설명한 바와 같이 유닛(U)(장방형)의 좌변→상변→우변→하변이라는 우선순위에 따라서 나열된다. 또한, 좌변 및 우변 상에 위치하는 인접 노드의 노드 레코드(NR)는 위도의 오름차순으로 나열되고, 상변 및 하변 상에 위치하는 인접 노드의 노드 레코드(NR)는 경도의 오름차순으로 나열된다. 또한, 비인접 노드의 레코드(NR)에 대해서는 우선 위도의 오름차순으로 나열되고, 위도가 동일한 좌표의 복수의 비인접 노드의 레코드(NR)에 대해서는 경도의 오름차순으로 나열된다. 이러한 나열방식에 따라서 진입노드의 검색처리를 더욱 고속화할 수 있다. 예를 들어, 상기의 나열방식의 규칙에 따르면, 도 39의 인접 노드(N10∼N20)의 노드 레코드(NR)는 N10→N11→N12→N13→N14→N15→N16→N17→N18→N19→N20의 순서로 유닛(U1)의 지도파일(CF)내에 기록된다. 동일하게, 인접 노드(N20∼N27)의 노드 테이블(U2)의 노드 레코드(NR)는 N20→N21→N22→N23→N24→N25→N26→N27의 순으로 유닛(U2)의 지도파일(CF)내에 기록된다. 또한, 유닛(U3)의 지도파일(CF) 내에는 노드 N30→N31→N32→N33→N34→N35→N36→N37→N38의 순서로 노드 레코드(NR)가 기록된다.
통상, 경로탐색처리에서는 읽어 들인 지도파일(CF)내에서 탐색이 확대되고,탐색중의 루트가 인접 노드에 도달했을 때에는 그 대응하는 인접 유닛(NU)이 새롭게 읽어 들여진다. 본 실시형태에는 인접 유닛(NU)의 지도파일(CF)이 읽어 들여졌을 때, 우선 전회에 읽어 들여진 지도파일(CF)과 금회 읽어 들여진 지도파일(CF)의 유닛 사이의 경계상에 존재하는 전체 인접 노드의 연결이 실시된다. 이 때 상술한 바와 같이 노드 테이블에서, 인접 노드의 노드 레코드(NR)가 상술한 순위로 기록됨으로써 인접 노드의 연관을 고속화할 수 있다. 이 때문에, 예를 들어 유닛(U1)의 인접 노드(N12)와 동일한 위치를 나타내는 유닛(U3)의 인접 노드(N35)가 보이면, 유닛(1)의 다음의 인접 노드(N13)에 대응하는 유닛(3)의 인접 노드(N36)는 반드시 N35의 다음의 레코드에 나열되어 있다. 또한, 동일하게 유닛(2)의 인접 노드(N20)에 대응하는 유닛(1)의 인접 노드(N16)가 보이면, 유닛(2)의 다음 인접 노드(N21)에 대응하는 유닛(1)의 인접 노드(N17)는 반드시 N16의 다음 레코드에 나열되어 있다. 이와 같이, 상술한 바와 같은 규칙성에 따라서 인접 노드를 나열함으로써 인접 유닛 사이에서 인접 노드의 검색처리를 고속화할 수 있다.
그런데, 스텝(S304)에서 진입 노드가 보이면, 데이터 처리부(13)는 진입노드(N20)의 접속처 정보(노드 레코드 번호 또는 오프셋 어드레스)를 참조하여 유닛(U2)의 지도파일(CF)(보다 구체적으로는 제 1 또는 제 2 링크 테이블)로부터 상기 진입노드(N20)에 접속된 링크(L20)의 링크 레코드(LR)(도 30 및 도 31 참조)를 찾아낸다. 이하에서는, 진입노드(N20)에 접속된 링크(L20)를 진입 링크(L20)라고 부르기로 한다. 그 후, 데이터 처리부(13)는 찾아낸 링크 레코드(LR)로부터 진입 링크(L20)의 속성 정보를 추출한다(스텝(S305)).
다음에, 데이터 처리부(13)는 스텝(S301)에서 추출한 탈출링크(L12)의 속성정보와 스텝(S305)에서 추출한 진입링크(L20)의 속성정보가 동일한지의 여부를 판단한다(스텝(S306)). 데이터 처리부(13)는 2개의 속성정보가 서로 다르다고 판단한 경우, 스텝(S303)으로 돌아가 새로운 진입노드(N)를 찾는다. 여기에서, 본 실시형태에서는 도 2를 참조하여 설명한 바와 같이 서로 다른 축척의 지도를 나타내는 몇개의 지도파일(CF)이 제 1 기억장치(19)에 저장되어 있다. 하위 계층의 지도파일(CF)은 상세한 도로망을 나타낼 수 있으므로, 2개의 노드 좌표의 차분값이 소정의 임계값 이하이면, 양 노드(N)가 동일한 위치를 나타낼 확률이 상대적으로 높아진다. 그러나, 상위 계층의 지도파일(CF)은 개략적인 도로망밖에 나타낼 수 없으므로, 2개의 노드 좌표의 차분값이 소정의 임계값 이하일지라도, 양 노드(N)가 동일한 위치를 나타낼 확률은 상대적으로 낮아진다. 본 실시형태에서는 스텝(S306)에 있어서 탈출링크 및 진입링크의 속성의 일치/불일치를 판단함으로써 데이터 처리부(13)가 어느 도로로부터 다른 도로를 찾아가지 않고, 동일한 1개의 도로를 정확하게 찾아가도록 하고 있다. 즉, 스텝(S306)의 처리는 하위계층의 지도파일(CF)에 대하여 실행되지 않아도 좋다.
데이터 처리부(13)는 스텝(S306)에서 탈출링크(L12) 및 진입링크(L20)의 속성정보가 일치하고 있다고 판단하면, 1개의 도로를 정확하게 찾아가고 있다고 간주하여, 도 38의 플로우차트에서 빠져나와 도 34의 스텝(S107)으로 진행한다. 데이터 처리부(13)는 금회 계속 읽어들인 지도파일(CF)의 계층에서의 탐색종료조건을 만족하였다고 판단한 경우, 출발지(SP)측의 경로와 목적지(DP)측의 경로가 연결되었는지 여부를 판단한다(스텝(S108)). 데이터 처리부(13)는 출발지(SP)측과 목적지(DP)측의 경로가 연결되어 있는 경우에는 양 지점간의 최단 루트가 구해졌다고 판단하고, 경로탐색처리를 종료한다. 한편, 출발지(SP)측과 목적지(DP)측의 경로가 아직 연결되어 있지 않은 경우에는, 데이터 처리부(13)는 스텝(S109)으로 진행하고, 1개 상위 계층으로 이행하여 광역 또는 개략적인 도로망을 나타내는 지도파일(CF)을 사용하여 경로탐색처리를 속행한다.
다음에 어느 하위계층에서 상위계층으로의 이후의 처리에 대해서 상세하게 설명한다. 이 때, 데이터 처리부(13)는 하위계층에서 탐색처리의 종점이 되는 노드(N)(탐색 중 루트의 종점)에서 상위계층의 지도파일(CF) 내에 존재하고 또한 동일한 위치를 나타내는 노드(N)로 이행한다. 따라서, 데이터 처리부(13)가 상위계층으로의 이행처리를 확실하게 실시하기 위해서는 상위계층의 지도파일(CF)에 포함되는 모든 노드(N)가 그 자유닛(CU)의 각 노드(N)로부터 반드시 검색 가능할 필요가 있다.
종래에는 이러한 검색을 실현하기 위해서 하위계층의 노드(N)와 동일한 위치를 나타내는 데에 상위계층의 노드(N)의 노드번호나 오프셋 어드레스 등이 노드레코드 내에 기록되는 방법이 채용되고 있었다. 그러나, 이러한 상위계층의 지도파일의 내부 데이터구조에 관한 정보가 하위계층의 지도파일에 기록되면, 상위계층의 지도파일이 갱신된 경우, 하위계층의 지도파일도 갱신되지 않으면 하위계층에서 상위계층으로의 이행처리를 원활하게 실시할 수 없게 되는 문제점이 있었다. 그래서, 본 실시형태에서는 각 지도파일(CF)에는 상위계층의 지도파일(CF)의 내부데이터구조에 직접 관계하는 정보는 기록되지 않고, 계층이행을 실시할 때에 노드의 좌표정보나 링크의 속성정보가 참조된다. 그러나, 이 경우, 일반적으로 상위계층의 지도파일(CF)이 나타내는 지도는 하위계층의 지도파일(CF)이 나타내는 지도에 비해 좌표의 분해능력이 낮다. 그 때문에 도 40에 도시한 바와 같이 하위계층 및 상위계층의 지도파일(CF)에서는 서로 다른 좌표를 갖고 있던 2개의 노드(N)가 상위계층의 지도파일(CF)에서 좌표의 라운딩 오차 때문에 동일 좌표를 가지게 될 가능성이 있다. 따라서, 노드좌표만으로는 하위계층의 노드(N)와 일치하는 상위계층의 노드(N)를 일의적으로 특정하는 것은 불가능하다.
그래서, 본 실시형태에서는 노드좌표뿐만 아니라 노드레코드(NR)의 기록순서(나열방법)가 이용된다. 즉, 상술과 같이 제 1 또는 제 2 노드테이블에서 노드레코드(NR)의 나열 순서는 인접 노드, 비인접 노드 모두 명확하게 규정되어 있다. 이 때문에 좌표의 라운딩 오차가 생기는 상위계층의 유닛(U)에 있어서도 라운딩 오차가 생기기 전의 정규화 경도위도좌표를 이용하여 좌표의 오름차순으로 노드레코드(NR)가 기록된다. 이에 의해 데이터 처리부(13)는 하위계층의 노드(N)로부터 동일 위치를 나타내고 또한 상위계층의 부유닛(PU)에 포함되는 노드(N)를 검색하는 경우에도 하위계층 유닛(U) 내에 기록되어 있는 노드(N) 내에서 부유닛(U)에도 기록되어 있고, 또한 상위계층에서 라운딩 오차가 생긴 경우에 동일 좌표가 된다고 생각되는 노드(N) 중에서 노드레코드(NR)의 기록순서에 기초하여 부유닛(PU) 내에서 대응하는 노드(N)를 일의적으로 특정할 수 있다.
보다 구체적으로는 상술과 같이 지도파일(CF)에서는 상대적으로 1계층 위의부유닛(PU)은 그 자유닛(CU)에 대하여 경도방향 및 위도방향 모두 8배의 유닛폭을 갖는다. 한편으로는, 계층에는 관계없이 각 노드는 유닛(U)의 경도방향 및 위도방향 모두 8000h(16비트)로 정규화한 정규화 좌표를 갖는다. 즉, 부유닛(PU)은 자유닛(CU)에 대하여 그 좌표분해능력이 경도방향 및 위도방향 모두 1/8이라고 할 수 있다. 이 때문에 자유닛(CU)의 정규화 경도 및 정규화 위도좌표 16비트 내, 상위 13비트가 동일한 값을 갖는 노드(N)는 그 부유닛(PU)에 있어서 동일 정규화좌표를 갖게 된다.
예를 들면 도 41에 도시한 바와 같이 자유닛(CU)에 기록되어 있는 5개의 노드(Na, Nb, Nc, Nd, Ne)의 정규화 경도 및 정규화 위도좌표 16비트 내, 그 상위 13비트가 동일 값을 갖고, 또한 이 중 4개의 노드(Na, Nc, Nd, Ne)의 부가 되는 노드(Na2, Nc2, Nd2 및 Ne2)가 부유닛(PU)에 기록되어 있다고(각 노드레코드(NR)에 부노드(PU)가 존재하는 것을 나타내는 플래그 또는 코드를 기록하고 있다) 한다. 이 경우, 도 42에 도시한 바와 같이 자유닛(CU)의 노드테이블에는 노드(Na, Nb, Nc, Nd 및 Ne)의 5개의 노드레코드(NR)는 위도 및 경도의 오름차순에 따라서(상술) Na→Nb→Nc→Nd→Ne의 순으로 기록되어 있다. 또한 이 때 노드(Na, Nb, Nc, Nd 및 Ne)의 5개의 노드레코드(NR)는 노드테이블 내에서 반드시 연속하고 있지는 않다.
부유닛(PU)의 노드테이블을 작성할 때에는 상기 5개의 노드레코드(NR)의 나열 순서에 기초하여 노드(Na, Nc, Nd 및 Ne) 각각에 대응하는 부노드(Na2, Nc2, Nd2 및 Ne2)의 노드레코드(NR)가 이 순서로 기록(반드시 연속하여 기록하지 않는다)된다. 이 결과, 하기와 같이 자유닛(CU)에 기록되어 있는 노드(Nd)에 대한 부유닛(PU)에서의 부노드(Nd2)를 특정할 수 있다. 최초로 자유닛(CU)의 노드(nd)는 노드테이블에 있어서 그 정규화좌표 16비트내의 상위 13비트가 동일 노드(N)이고, 또한 부노드(N)가 존재하는 것 중의 3번째 노드레코드(NR)에 기록되어 있다. 다음에 자유닛(CU)에서의 노드(Nd)의 정규화 좌표로부터 부유닛(PU)에서의 정규화 좌표가 산출된다. 다음에 산출한 정규화 좌표를 갖는 노드(N)가 부유닛(PU)의 노드테이블에서 찾아진다. 그 결과, 도 41 및 도 42의 예에서는 4개의 노드(Na2, Nc2, Nd2 및 Ne2)가 검출된다. 다음에 자유닛(CU)의 노드(Nd)에 대응하는 부노드(Nd)는 상술한 바와 같이 이들 노드(Na2, Nc2, Nd2, Ne2)의 4개의 노드 중 3번째에 기록되어 있기 때문에 노드(Nd)의 부노드는 “Nd2”인 것을 알 수 있다.
이상과 같이 데이터 처리부(13)는 상위계층으로 이행한 후, 그 상위계층에서 스텝(S103)으로부터 스텝(S108)까지의 처리를 반복하고, 출발지(SP)측과 목적지(DP)측의 탐색이 연결된 시점에서 경로탐색처리를 종료한다.
이상과 같이 본원 발명에서 이용하는 지도데이터는 장방형상 영역으로 구획된 유닛단위로 파일화되고, 또한 이들 각 유닛에는 동일 계층 내의 인접 유닛 사이에서도 상위계층에 존재하는 부자유닛 사이에서도 다른 유닛 내의 내부데이터구조에 관계하는 레코드번호나 기록 어드레스 등을 일절 기록하고 있지 않기 때문에 임의의 범위, 임의의 계층의 유닛파일을 치환함으로써 지도데이터의 갱신을 유연하게 실시할 수 있다.
「지도파일(CF)의 송수신처리」
최근, 센터국(2)에서 단말장치(1)로 지도를 제공하는 시스템이 연구·개발되고 있다. 이러한 시스템에 의해 단말장치(1)는 필요한 때에 필요한 지도를 얻을 수 있다. 그 때문에 센터국(2)의 제 2 기억장치(24)에는 일반적으로 단말장치(1)측의 제 1 데이터베이스(111)보다도 대규모인 제 2 데이터베이스(25)가 준비되어 있다. 본 실시형태에서는 제 1 데이터베이스(111) 및 제 2 데이터베이스(25)에는 상술한 파일시스템에 의해 몇개인가의 지도파일(CF)이 관리되고 있다. 그리고 이하에 설명하는 바와 같이 센터국(2) 및 단말장치(1)는 지도파일(CF)의 송신 및 수신을 실시한다.
우선, 단말장치(1)는 센터국(2)에 지도파일(CF)의 송신을 요구한다. 도 43의 (a)는 단말장치(1)가 어느 지도파일(CF)의 송신을 센터국(2)에 요구할 때의 처리순서를 나타내는 플로우차트이다. 또 도 43의 (b)는 도 43의 (a)의 처리순서에 따라 송신되는 제어데이터로서의 요구(REQ)의 포맷을 나타내는 도면이다. 단말장치(1)의 사용자는 제 1 기억장치(19)에 새로운 지도파일(CF)을 추가하고 싶은 경우 또는 오래된 지도파일(CF)을 새로운 것으로 갱신하고 싶은 경우, 입력장치(11)를 조작하여 지도의 요구·수신기능을 기동한다. 다음에 사용자는 출력장치(110)의 디스플레이에 표시되는 메뉴화면에 따라서 입력장치(11)를 조작하여 필요한 지도의 범위 및 계층(레벨)을 입력한다. 입력장치(11)는 사용자의 입력에 응답하여 지도의 범위 및 계층을 나타내는 정보를 데이터 처리부(13)로 출력하여 지정한다(스텝(S401)). 여기에서 지도 범위의 입력에는 디스플레이에 표시되는 광역지도에 대하여 원하는 범위를 사용자가 입력장치(11)를 이용하여 장방형 영역으로 둘러싸서 지정하거나, 주소색인을 사용하여 지역을 사용자가 입력장치(11)로 지정하거나 하는 방법이 있다.
데이터 처리부(13)는 입력장치(11)로부터 출력된 범위 및 계층의 정보가 입력되면, 상기 범위정보를 경도·위도좌표로 변환한다. 데이터 처리부(13)는 경도·위도좌표 및 계층의 정보를 요구생성부(14)로 출력한다. 요구생성부(14)는 입력된 경도·위도좌표 및 계층의 정보를 이용하여 도 43의 (b)에 나타내는 포맷의 요구(REQ)를 생성한다(스텝(S402)). 도 43의 (b)에 있어서 요구(REQ)는 사용자가 필요로 하는 지도파일(CF)의 계층을 나타내는 정보와, 상기 지도파일(CF)이 나타내는 지도의 범위를 특정하는 경도·위도좌표로 구성된다. 여기에서 경도·위도좌표는 보다 구체적으로는 사용자가 광역지도를 장방형 영역으로 둘러싸서 지정하는 경우에 그 왼쪽 아래 경도좌표, 왼쪽 아래 위도좌표, 오른쪽 위 경도좌표 및 오른쪽 위 위도좌표로 이루어진다. 요구생성부(14)는 생성한 요구(REQ)를 제 1 송수신부(15)로 출력하고, 상기 제 1 송수신부(15)는 안테나(16)를 통하여 입력된 요구(REQ)를 업링크(UL)로 송출한다(스텝(S403)).
다음에 센터국(2)에서 지도파일(CF)의 송신처리에 대해서 설명한다. 단말장치(1)에서 송출된 요구(REQ)는 통신망(3)의 업링크(UL)를 통하여 센터국(2)의 제 2 송수신부(21)에 의해 수신된다. 제 2 송수신부(21)는 수신한 요구(REQ)를 수신요구 해석부(22)로 출력한다. 여기에서 도 44는 센터국(2)이 요구(REQ)의 수신 후에 실행하는 처리순서를 나타내는 플로우차트이다. 수신요구 해석부(22)는 입력된 요구(REQ)를 해석하여 해석결과를 판독제어부(23)로 출력한다. 판독제어부(23)는 해석결과에 따라 특정되는 지도파일(CF)을 제 2 데이터베이스(25)로부터 검색한다(스텝(S501)). 여기에서 요구(REQ)에는 단말장치(1)가 요구한 지도파일(CF)의 계층(레벨) 및 상기 지도파일(CF)이 나타내는 지도의 왼쪽 아래 경도좌표, 왼쪽 아래 위도좌표, 오른쪽 위 경도좌표 및 오른쪽 위 위도좌표가 기술되어 있다. 그래서 수신요구 해석부(22)는 우선 요구(REQ)로부터 왼쪽 아래 경도좌표 및 왼쪽 아래 위도좌표를 추출하고, 상기 왼쪽 아래 경도좌표 및 왼쪽 위도좌표를 대표점으로 하여 도 35의 플로우차트로 나타낸 처리순서에 따라서 요구된 지도파일(CF)의 패스명을 도출한다.
다음에 수신요구 해석부(22)는 도출한 패스명을 갖는 지도파일(CF)이 제 2 기억장치(24)에 저장되어 있는지 여부를 조사한다(스텝(S502)). 지도파일(CF)이 저장되어 있지 않은 경우, 센터국(2)은 도 44의 처리를 종료한다. 한편, 지도파일(CF)이 저장되어 있는 경우, 판독제어부(23)는 수신요구해석부(22)에 의해 도출된 패스명을 수취하고, 상기 패스명에 따라서 제 2 기억장치(24)로부터 요구된 지도파일(CF)을 판독한다. 판독제어부(23)는 판독한 지도파일(CF)을 패킷조립부(25)의 메모리에 전송한다. 이에 의해 패킷조립부(25)는 요구된 지도파일(CF)을 내부로 읽어들인다(스텝(S503)). 패킷조립부(25)는 읽어들인 지도파일(CF)을 기초로 패닛(P)을 조립하고(스텝(S504)), 제 2 송수신부(21)로 출력한다. 제 2 송수신부(21)는 입력된 패킷(P)을 다운링크(DL)로 송출한다(스텝(S505)). 또한, 스텝(S504)의 상세한 내용에 대해서는 후술된다.
스텝(S505))이 종료하면, 수신요구 해석부(22)는 요구(REQ)에서 지정되는 범위의 지도파일(CF)이 제 2 데이터베이스(25)에 또 존재하는지 여부를 조사하기 위해서 전회의 스텝(S501)에서 지정한 대표점 좌표에 요구(REQ)에서 지정되는 레벨의 경도폭(W) 및 위도폭(H)을 가산하고, 상기 가산값을 새로운 대표점으로서 설정한다. 또한 수신요구 해석부(22)는 새로운 대표점의 경도좌표 및 위도좌표가 요구(REQ)에서 지정되는 오른쪽 위 경도좌표 및 오른쪽 위 위도좌표를 초과하고 있는지 여부를 판단한다. 새로운 대표점의 경도좌표 및 위도좌표가 오른쪽 위 경도좌표 및 오른쪽 위 위도좌표를 초과하고 있지 않다면, 센터국(2)에서는 계속해서 스텝(S502∼S505)의 처리가 실행되고, 다른 하나의 지도파일(CF)을 기초로 조립된 패킷(P)이 단말장치(1)로 송신된다. 새로운 대표점의 경도좌표 및 위도좌표가 오른쪽 위 경도좌표 및 오른쪽 위 위도좌표를 초과하고 있다면, 요구된 지도파일(CF)을 모두 단말장치(1)로 송신하였다고 하고 센터국(2)은 도 44의 처리를 종료한다.
이상의 스텝(S501∼S505)을 반복함으로써 센터국(2)은 단말장치(1)가 요구한 대로의 레벨 및 범위의 지도를 나타내는 지도파일(CF)을 상기 단말장치로 송신할 수 있다.
여기에서 도 45는 지도파일(CF)로부터 패킷(P)이 조립되기 까지의 과정에서 각 데이터의 구조를 나타내고 있다. 스텝(S503)의 종료 시점에서 패킷조립부(25)의 내부에는 도 45의 (a)에 도시한 바와 같이 1개의 지도파일(CF)이 읽어들여지고 있다. 패킷조립부(25)는 스텝(S504)을 실행한다. 여기에서 도 46은 스텝(S504)의 상세한 처리순서를 나타내는 플로우차트이다. 이하, 도 45 및 도 46을 참조하여 패켓조립부(25)의 처리를 상세하게 설명한다. 최초로 패킷조립부(25)는 내부에 읽어들인 지도파일(CF)을 기초로 마스터데이터(MD)를 작성한다(스텝(S601)). 마스터데이터(MD)는 도 45의 (b)에 도시한 바와 같이 데이터 헤더(DH)와 데이터부로 구성된다. 여기에서 도 47은 마스터데이터(MD)의 상세한 내부데이터구조를 나타낸다. 도 47에 있어서 데이터 헤더(DH)는 유닛ID 및 버전코드로 구성된다.
유닛ID는 이 마스터데이터(MD)의 기초가 되는 지도파일(CF)을 특정하기 위한 코드이다. 버전코드는 이 마스터데이터(MD)의 기초가 되는 지도파일(CF)의 포맷버전 및 컨텐츠버전을 나타내는 코드이다. 또한 유닛ID, 버전코드는 모두 지도파일(CF)의 유닛헤더(도 7 참조)에 저장되어 있는 정보이며, 지도파일(CF)이 패킷조립부(25)에 읽어들여진 시점에서 상기 패킷조립부(25)에 의해 추출되어 유지된다. 또한 이들 유닛ID와 버전코드는 후술하는 단말장치(1)의 처리에 있어서 사용된다.
또, 마스터데이터(MD)의 데이터부에는 지도파일(CF) 그 자체가 설정된다. 그런데, 지도파일(CF)은 상술한 바와 같이 각종 테이블로 구성된다(도 7 참조). 이들 각 테이블에는 서로 다른 테이블을 서로 참조하는 정보는 기록되지 않는다. 바꿔 말하면, 단말장치(1)는 각 테이블을 독립적으로 사용할 수 있다. 예를 들면 도 8의 (a)에 도시한 바와 같이 단말장치(1)는 기본배경 테이블만을 출력장치(110)에 표시할 수 있다. 즉, 각 테이블은 서로 분리가능한 데이터구조를 갖는다. 그 때문에 데이터부는 기본배경 테이블, 기본문자기호 테이블, 주요도로 노드테이블, 주요도로 링크테이블의 기본데이터(즉, 대략적인 지도를 나타내는 데이터)만으로 구성되어도 좋다. 또, 데이터부는 상세배경 테이블, 상세문자기호 테이블, 세가로 노드테이블, 세가로 링크테이블의 상세데이터만으로 구성되어도 좋다. 이상과 같이 지도파일(CF)의 일부분이 데이터부에 설정되는 경우가 있다.
또한, 도 7에 도시한 바와 같이 유닛헤더에는 유닛ID 및 버전코드가 포함된다. 이 유닛ID 및 버전코드는 데이터 헤더(DH)(도 47 참조)에 포함된다. 따라서 마스터데이터(MD)의 데이터부에 유닛ID 및 버전코드가 설정되면, 마스터데이터(MD) 내에 2개의 유닛ID 및 버전코드가 포함되게 된다. 그 때문에 이 데이터부에는 유닛ID와 버전코드가 포함되지 않아도 좋다.
패킷조립부(25)는 이상과 같이 하여 생성된 마스터데이터(MD)를 i개로 분할한다. 이에 의해 도 45의 (c)와 같이 i개의 세그먼트데이터(SD1∼SDi)가 생성된다(스텝(S602)). 이 스텝(S602)에 있어서 패킷조립부(25)는 마스터데이터(MD)에 포함되는 데이터헤더(DH) 및 데이터부(즉, 지도파일(CF))를 의식하지 않는다. 즉, 어떠한 세그먼트데이터(SD)에 데이터헤더(DH)의 일부와 데이터부의 일부가 혼재하는 경우도 일어날 수 있다. 이들 i개의 세그먼트데이터(SD)에는 번호(이후, 세크먼트번호라 한다)가 부가된다. 이 세그먼트번호는 세그먼트데이터 상호간에 중복하지 않고, 또한 연속하는 번호인 것이 바람직하다. 왜냐하면 후술하는 단말장치(1)의 처리가 용이하게 되기 때문이다.
또한, 패킷조립부(25)는 i개의 세그먼트데이터(SD1∼SDi)에 오류정정부호(또는 오류검출부호)를 부가한다(스텝(S603)). 이에 의해 도 45의 (d)에 도시한 바와 같이 i개의 세그먼트데이터(오류정정부호 붙임)(SD1∼SDi)가 생성된다. 패킷조립부(25)는 또한 각 세그먼트데이터(오류정정부호 붙임)(SD1∼SDi)를 j개로 분할한다. 이에 의해 도 45의 (e)에 도시한 바와 같이 1개의 세그먼트데이터(SD)에 대해j개의 패킷이 생성된다(스텝(S604)). 이상의 처리의 결과, 패킷조립부(25)는 1개의 지도파일(CF)을 기초로 전부 i×j개의 패킷(P11, P12, …, P1j, …Pij)을 생성한다. 또, 이들 i×j개의 패킷(P11, P12, …, P1j,…Pij)에는 각각 번호(이후, 패킷번호라 한다)가 부가된다. 이 패킷번호는 패킷마다 서로 중복하지 않고 또한 연속하는 번호인 것이 바람직하다. 왜냐하면 후술하는 단말장치(1)의 처리가 용이해지기 때문이다. 이 패킷번호에 의해 단말장치(1)는 각각 송신되는 i×j개의 패킷(P11, P12, …, P1j, …Pij)이 모두 정리되었는지 여부를 용이하게 판단할 수 있게 된다. 이 스텝(S604)이 종료하면 패킷조립부(25)는 서브루틴인 도 46의 처리에서 빠져나와 도 44의 처리로 돌아간다. 그리고 스텝(S505)의 처리가 실시된다. 이상의 각 패킷(P11, P12, …, P1j, …Pij)은 스텝(S505)에 있어서 제 2 송수신부(21)로부터 통신망(3)(다운링크(DL))에 차례로 송출되어, 단말장치(1)로 송신된다.
다음에 도 48의 플로우차트를 참조하여 단말장치(1)에서 지도파일(CF)의 수신순서에 대해서 설명한다. 센터국(2)에서 송신된 각 패킷(P11, P12, …, P1j, …Pij)은 통신망(3)을 통하여 단말장치(1)의 안테나(16)에 입력된다. 제 1 송수신부(15)는 안테나(16)로부터 출력되는 패킷(P11, P12, …, P1j, …Pij)을 차례로 수신한다(스텝(S701)).
또, 제 1 송수신부(15)는 도시하지 않은 버퍼메모리를 갖는다. 제 1 송수신부(15)는 수신된 각 패킷(P11, P12, …, P1j, …Pij)을 버퍼메모리에 차례로 저장한다.
패킷분해부(17)는 제 1 송수신부(15)의 버퍼메모리에 정기적으로 액세스하고, 센터국(2)에 의해 송신된 i×j개의 패킷(P11, P12, …, P1j, …Pij)이 버퍼메모리 내에 정리되어 있는지 여부를 판단한다(스텝(S702)). 스텝(S702)의 판단은 각 패킷(P11, P12, …, P1j, …, Pij)에 부가된 패킷번호에 기초하여 실시된다. 보다 구체적으로는 패킷번호가 연속 번호라면 패킷분해부(17)는 1에서 (i×j)까지의 패킷번호가 모두 정리되어 있는지 여부를 판단한다.
스텝(S702)에서 패킷(P)이 모두 정리되어 있지 않은 경우, 패킷분해부(17)는 스텝(S703)으로 진행하지 않고, 스텝(S701)이 다시 실행된다. 그 결과, 제 1 송수신부(15)는 부족분의 패킷(P)을 즉시 수신한다.
한편, 스텝(S702)에서 패킷(P)이 모두 정리되어 있는 경우, 패킷분해부(17)는 스텝(S703)으로 진행한다. 패킷분해부(17)는 스텝(S701)에서 수신된 패킷(P11, P12, …, P1j, …Pij)에서 마스터데이터(MD)를 분해(디어셈블리)한다(스텝(S703)). 스텝(S703)의 사이에 오류정정도 필요에 따라 실시된다. 분해된 마스터데이터(MD)는 데이터 처리부(13)로 출력된다. 데이터 처리부(13)는 입력된 마스터데이터(MD)를 기초로 지도파일(CF)을 작성하고, 작성한 지도파일(CF)을 판독/기록제어부(18)와 협동하여 제 1 기억장치(19)에 저장한다(스텝(S704)).
스텝(S704) 후, 데이터 처리부(25)는 수신해야 하는 일련의 패킷(P)이 아직 있는지 여부를 판단한다(스텝(S705)). 수신해야 하는 패킷(P)이 있는 경우, 스텝(S701)로 되돌아가 패킷(P)의 수신처리가 계속 실시된다. 한편, 수신해야 하는 패킷(P)이 없는 경우에는 도 48의 처리를 종료한다.
여기에서 도 49는 도 48의 스텝(S703)의 상세한 처리순서를 나타내는 플로우차트이다. 또 도 50은 패킷(P11, P12, …, P1j, …Pij)으로부터 지도파일(CF)이 작성되기 까지의 과정에서 각 데이터의 구조를 나타내고 있다. 상술에서 알 수 있듯이 도 48의 스텝(S703)이 개시되는 시점에서 제 1 송수신부(15)에는 도 50의 (a)에 도시한 바와 같이 일련의 패킷(P11, P12, …, P1j, …, Pij)이 정리되어 있다. 패킷분해부(17)는 제 1 송수신부(15)에 버퍼되어 있는 패킷(P11, P12, …, P1j, …, Pij)에서 처리해야 하는 패킷(P)을 얻는다(스텝(S801)). 이제 패킷분해부(17)는 패킷(P11, P12, …, P1j, …, Pij)을 얻는다고 가정한다.
다음에 패킷분해부(17)는 스텝(S801)에서 얻어진 각 패킷(P)에서 패킷번호를 떼어낸다. 패킷분해부(17)는 번호가 떼어진 각 패킷(P)을 하나로 하여 도 50의 (b)에 도시한 바와 같이 하나의 세그먼트데이터(SD)를 복원한다(스텝(S802)). 상술의 가정에 따르면 패킷(P11, P12, …, Pij)이 하나로 되고, 그 결과 세그먼트데이터(SD1)가 복원된다.
각 세그먼트데이터(SD)에는 오류정정부호(또는 오류검출신호)가 부가되어 있다. 스텝(S802)의 다음에 패킷분해부(17)는 오류정정부호를 이용하여 복원된 세그먼트데이터(오류정정부호 붙임)(SD)에 생길 가능성이 있는 오류를 정정한다(스텝(S803)).
다음에 패킷분해부(17)는 세그먼트데이터(오류정정부호 붙임)(SD)로부터 오류정정부호를 떼어내고, 이에 의해 도 50의 (c)에 도시한 바와 같이 세그먼트데이터(오류정정부호 없음)(SD)가 복원된다(스텝(S804)). 복원된 세그먼트데이터(SD)는 패킷분해부(17)의 기억영역에 유지된다. 상술의 가정에 따르면 세그먼트데이터(SD1)에 오류정정이 실시된 후, 패킷분해부(17)의 기억영역에 유지된다.
스텝(S804)의 다음에 패킷분해부(17)는 제 1 송수신부(15) 내에 처리해야 하는 패킷(P)이 남아 있는지 여부를 판단한다(스텝(S805)). 처리해야 하는 패킷(P)이 남아 있는 경우, 패킷분해부(17)는 스텝(S801)로 되돌아가, 스텝(S801∼S804)을 실시하고, 도 50의 (a)∼(c)에 도시한 바와 같이 패킷(P)에서 세그먼트데이터(SD)를 복원한다. 본 설명에서는 도 49의 처리의 개시시점에서 제 1 송수신부(15)에는 (i×j)개의 패킷(P)이 있다. 따라서, 스텝(S701∼S705)으로 구성되는 루프는 i회 반복된다. 그 결과 i개의 세그먼트데이터(SD1∼SDi)가 복원된다.
이 루프가 필요횟수만큼 반복되면, 제 1 송수신부(15) 내에는 처리해야 하는 패킷(P)이 없게 된다. 이 상태에서 스텝(S805)의 판단이 행해지면, 패킷분해부(17)는 스텝(S806)으로 진행한다. 처리해야 하는 패킷(P)이 없어진 시점에서 i개의 세그먼트데이터(SD1∼SDi)가 패킷분해부(17)에 유지된다. 또, 상술한 바와 같이 각 세그먼트데이터(SD1∼SDi)에는 세그먼트번호가 붙여져 있다. 패킷분해부(17)는 이 세그먼트번호에 따라서, 즉 세그먼트번호가 연속하도록 세그먼트데이터(SD1∼SDi)를 순번으로 나열한다. 그 후, 세그먼트번호는 각 세그먼트데이터(SD1∼SDi)에서 떨어진다. 패킷분해부(17)는 세그먼트번호가 떨어진 세그먼트데이터(SD1∼SDi)를 하나로 한다. 그 결과, 도 50의 (d)에 도시한 바와 같이 마스터데이터(MD)가 복원된다(스텝(S806)). 복원된 마스터데이터(MD)는 데이터처리부(13)로 출력된다(스텝(S807)).
또한, 본 지도제공 시스템에 한정되지 않고 통신시스템에서는 통신장해가 일어날 수 있다. 따라서, 단말장치(1)는 모든 세그먼트데이터(SD)를 바르게 복원할 수 있다고 한정되지 않는다. 여기에서 바르게 복원된 세그먼트데이터(SD)는 센터국(2)이 생성한 것과 동일한 세그먼트 데이터(SD)를 의미한다. 예를 들면 세그먼트데이터(SD2)가 바르게 복원되지 않은 경우에 있어서, 다른 세그먼트데이터(SD1, SD3∼SDi)가 바르게 복호된 경우를 상정한다. 이러한 경우, 패킷분해부(17)는 세그먼트데이터(SD1, SD3∼SDi)에 부가된 오류정정부호를 이용하여 세그먼트데이터(SD2)를 바른 것으로 복원할 수도 있다.
데이터 처리부(13)는 마스터데이터(MD)의 입력에 기인하여 스텝(S704)을 개시한다. 이 스텝(S704)은 상술한 바와 같이 마스터데이터(MD)로부터 지도파일(CF)을 작성하는 처리와 적성된 지도파일(CF)을 제 1 기억장치(19)에 저장하기 위한 처리이다. 여기에서 도 51은 도 48의 스텝(S704)의 상세한 처리순서를 나타내는 플로우차트이다.
우선, 데이터 처리부(13)는 입력된 마스터데이터(MD)의 데이터헤더(DH)로부터 유닛ID를 추출한다(스텝(S901)). 상술과 같이 유닛ID는 상기 유닛의 패스명과 서로 교환할 수 있도록 부여되어 있다. 데이터 처리부(13)는 추출한 유닛ID로부터 마스터데이터(MD) 내의 지도파일(CF)의 패스명을 도출한다.
데이터 처리부(13)는 스텝(S902)에서 도출한 패스명을 갖는 지도파일(CF)이 이미 제 1 기억장치(19)내에 저장되어 있는지 여부를 판단한다(스텝(S903)). 만일저장되어 있지 않다면 데이터 처리부(13)는 마스터데이터(MD)로부터 데이터헤더(DH)를 떼내어 지도파일(CF)을 얻는다. 그리고, 데이터 처리부(13)는 도출한 패스명 및 금회 수신한 지도파일(CF)을 판독/기록제어부(18)에 전송한다. 판독/기록제어부(18)는 전송되어 온 패스명에 따라서 금회 수신한 지도파일(CF)을 제 1 기억장치(19)에 저장한다. 이에 의해 제 1 데이터베이스(111)에는 새로운 지도파일(CF)이 추가되게 된다.
한편, 스텝(S903)에 있어서 스텝(S902)에서 도출한 패스명을 갖는 지도파일(CF)이 제 1 기억장치(19) 내에 이미 존재한다고 판단된 경우의 처리에 대해서 설명한다. 이 경우, 데이터 처리부(13)는 스텝(S904)으로 진행하고, 마스터데이터(MD)의 데이터 헤더(DH) 내에 저장되어 있는 버전코드를 추출한다. 또한, 데이터 처리부(13)는 판독/기록제어부(18)와 협동하여 스텝(S902)에서 도출한 패스명을 갖는 지도파일(CF)을 제 1 기억장치(19)로부터 읽어들인다. 데이터 처리부(13)는 제 1 기억장치(19)에서 읽어들인 지도파일(CF)의 유닛헤더 내에 기억된 버전코드를 추출하고, 스텝(S904)에서 추출한 버전코드와 비교한다. 데이터 처리부(13)는 마스터데이터(MD)로부터 추출한 버전코드 쪽이 새로운 것이라고 판단된 경우에는 스텝(S906)으로 진행하고, 마스터데이터(MD)의 데이터부만을 추출하여 새로운 버전의 지도파일(CF)을 제 1 기억장치(19)에 저장한다. 이에 의해 제 1 데이터베이스(111)에 있어서 오래된 지도파일(CF)은 새로운 것으로 갱신된다.
역으로 데이터 처리부(13)는 제 1 기억장치(19)에서 읽어들인 지도파일(CF)쪽이 새로운 것이라고 판단한 경우에는 수신한 마스터데이터(MD)를 파기한다. 즉,금회 수신한 지도파일(CF)은 제 1 기억장치(19)에는 저장되지 않는다.
이상과 같이 본 실시형태에 관한 지도파일(CF)은 복수의 축적 지도를 유닛 단위로 구획하여 디지털데이터화됨으로써 생성된다. 각 지도파일(CF)의 기록영역(논리영역)은 그 부자관계 및 인접관계를 나타내는 트리구조로 특정되는 패스명으로 표현된다. 이에 의해 각 지도파일(CF)은 효율적으로 관리된다. 이에 의해 하나의 유닛(U)에는 다른 유닛의 데이터구조에 관련되는 정보가 기록되지 않기 때문에 복수 유닛(U) 사이의 관계가 엷어진다. 이에 의해 어느 하나의 지도파일(CF)을 갱신한 경우라도 그 이외의 지도파일(CF)을 갱신할 필요가 없어진다. 이렇게 본 실시형태에 관한 지도파일(CF)에 의하면 제 1 기억장치(19)에서 지도파일(CF)의 신규 저장처리 및 갱신처리가 상당히 간단해진다.
또, 이러한 각 지도파일(CF)에 있어서 서로 인접하는 유닛(U)의 경계를 걸치는 도로망의 접속을 찾아갈 때에 데이터 처리부(13)는 탈출노드 및 진입노드의 좌표정보 및/또는 탈출링크 및 진입링크의 속성정보를 참조한다. 즉, 데이터 처리부(13)는 인접 유닛(NU)에 기록된 노드(N) 또는 링크(L)의 레코드번호 또는 오프셋 어드레스와 같은 인접 유닛(NU)의 내부 데이터구조에 관한 정보를 참조하지 않는다. 그 때문에 제 1 기억장치(19) 내의 어느 하나의 지도파일(CF)이 갱신된 경우에 있어서도 인접 유닛(NU)의 지도파일(CF)을 갱신하지 않고, 서로 인접하는 지도파일(CF)의 도로망의 접속을 정확하게 찾아갈 수 있다.
또, 본 실시형태에서는 어느 유닛(U) 및 인접 유닛(NU)의 경계에 걸치는 도로망의 접속을 찾아갈 때에 인접 유닛(NU)측의 진입노드 및 진입링크를 검색할 필요가 생긴다. 그러나, 각 유닛(U)에 있어서 노드레코드(NR) 및 링크레코드(LR)의 나열방법은 미리 규정되어 있다. 이에 의해 진입노드 및 진입링크의 검색처리를 고속화할 수 있다.
또, 본 실시형태에서는 경로탐색처리에 있어서 데이터 처리부(13)는 하위계층의 어느 노드(N)로부터 그것과 동일한 위치를 나타내는 노드(N)를 상위계층의 지도파일(CF)로부터 찾아내는 경우가 있다. 이 경우에 있어서도 상하계층 유닛(U)의 사이에 있어서도 자유닛(CU)측에 부유닛(PU)측의 내부데이터구조에 관한 정보가 기록되지 않으며, 부유닛(PU)측에 자유닛(CU)의 내부데이터구조에 관한 정보가 기록되지 않기 때문에, 상위계층의 지도파일(CF)만이 갱신되는 경우에 있어서도 그 자유닛(CU)을 나타내는 지도파일(CF)을 모두 갱신할 필요성은 생기지 않는다.
또, 이상과 같이, 유닛(U)과 같이 부분적인 영역의 지도만이 새로운 것으로 갱신되는 경우에 있어서도 인접 유닛 사이 및 상하계층 사이에서의 데이터의 정합성은 유지되기 때문에 센터국(2)이 단말장치(1) 등에 유선 또는 무선으로 지도파일(CF)을 제공하는 경우에 있어서도 단말장치(1)가 필요로 하는 지도파일(CF)만을 송신할 수 있다. 이에 의해 데이터송신시간 및 통신비용의 저감에 연결된다.
또한, 이상의 실시형태에는 단말장치(1)의 일례로서 카 네비게이션 시스템을 상정하여 설명하였다. 그러나, 퍼스널 컴퓨터 내에 지도파일(CF)의 데이터베이스를 작성하여 상기 퍼스널 컴퓨터가 지도를 표시하거나, 경로탐색을 실시하는 용도로도 본 실시형태는 적용할 수 있다. 즉, 본 실시형태는 이동가능한 단말장치에한정되지 않고, 거치형의 단말장치에도 적용할 수 있다.
또, 거치형의 단말장치에 대해서는 통신망(3)은 무선전송로일 필요성은 없으며 유선이라도 좋다.
또한, 본 실시형태에서는 단말장치(1)는 센터국(2)과 통신망(3)을 통하여 쌍방향통신을 행하여, 사용자가 필요로 하는 지도의 범위를 센터국(2)에 통지하고, 상기 범위에 대응하는 지도파일(CF)을 수신하고 있다. 그러나, 센터국(2)은 방송형식으로 지도파일(CF)을 단말장치(1)로 송신하여도 좋다.
또한, 본 실시형태에서는 제 1 데이터베이스(111) 및 제 2 데이터베이스(25)는 레벨「0」∼「3」까지의 4단계의 계층구조를 갖는 지도파일(CF)로 구성되어 있다. 그러나, 제 1 데이터베이스(111) 및 제 2 데이터베이스(25)는 4계층으로 한정되지 않고 어떤 계층의 지도파일(CF)로 구성되어도 관계없다.
또, 본 실시형태에서는 각 계층지도는 경도방향 및 위도방향으로 등간격으로 분할되고, 이에 의해 장방형 영역(유닛(U))이 형성되어 있다. 그러나, 각 계층의 지도파일(CF)의 데이터량이 거의 일정하게 되도록 각 계층지도는 경도방향 및 위도방향으로 다양한 간격으로 분할되어도 좋다. 단, 이 경우, 각 지도파일(CF)에는 경도방향 및 위도방향에 따른 분할사이즈를 특정하는 정보를 부가할 필요가 있다.
또, 본 실시형태에서는 지도파일(CF)은 유닛(U)단위로 작성되어 있다. 그러나, 지도파일(CF)은 복수의 유닛(U)과 상기 복수의 유닛(U)을 관리하기 위한 관리정보로 구성되어도 좋다. 이 경우, 지도파일(CF)의 갱신의 용이함을 확보하기 위하여 1개의 지도파일(CF)로 정리되는 유닛(U)의 개수는 최대 64개 정도이고, 또한정리된 유닛(U)을 관리하기 위한 관리정보는 복잡하게 되지 않도록 하는 것이 바람직하다.
또, 하나의 지도파일(CF)에 있어서 인접 노드의 노드레코드(NR)는 상기 유닛(U)의 경계를 일주(一周)하는 순서로 기록되어도 좋다. 이제, 기록순서의 일례로서 인접 노드의 노드레코드(NR)는 유닛(U)의 왼쪽 아래 구석에서 시계방향의 순서를 따라서 기록된다고 가정한다. 이 가정 하에서는 도 39에 도시한 유닛(U1)에 포함되는 인접 노드의 노드레코드(NR)는 「N10」→「N11」→「N12」→「N13」→「N14」→「N15」→「N18」→「N17」→「N16」→「N20」→「N19」라는 순서로 기록된다. 또, 유닛(U3)에 포함되는 인접 노드의 노드레코드(NR)는 「N30」→「N31」→「N32」→「N34」→「N33」→「N38」→「N37」→「N36」→「N35」라는 순서로 기록된다. 또한 유닛(U2)에 포함되는 인접 노드의 노드레코드(NR)는 「N20」→「N21」→「N22」→「N23」→「N24」→「N25」→「N27」→「N26」이라는 순서로 기록된다. 이제, 구체예로서 데이터 처리부(13)가 인접 노드(N14, N15)에 대응하는 인접 노드(N37, N38)를 검색하는 경우에 대하여 설명한다. 상술한 바와 같이 유닛(U1)의 지도파일(CF)에서는 인접 노드 N14→N15의 순서로 노드레코드(NR)가 기록된다. 한편, 유닛(U3)의 지도파일(CF)에서는 인접 노드 N38→N37의 순서로 노드레코드(NR)가 기록된다. 따라서, 데이터 처리부(13)가 인접 노드(N14)에 대응하는 인접 노드(N37)를 찾아낸다면 인접 노드(N15)에 대응하는 인접 노드는 인접 노드(N37)의 노드레코드(NR)의 하나 앞에 기록되어 있다. 그 때문에 데이터 처리부(13)는 인접 노드(N15)에 대응하는 인접 노드를 재빠르게 찾아낼 수 있다. 이와같이 인접 노드의 노드레코드(NR)가 유닛(U)의 경계를 일주하는 순서로 기록됨으로써 어느 유닛(N)과 그 인접 유닛의 경계 상에 나열된 인접 노드는 각각의 지도파일(CF)에 있어서 서로 역순으로 연속하여 나열되기 때문에 데이터 처리부(13)는 어느 유닛의 인접 노드에 대응하는 인접 유닛의 인접 노드를 고속으로 발견할 수 있다.
「제 2 실시형태」
도 52는 본 발명의 제 2 실시형태에 관한 지도제공 시스켐의 구성을 나타낸다. 본 지도제공 시스템에는 센터국(101)과 단말장치(102)가 수용된다. 센터국(102)과 단말장치(102)는 무선전송로(103)에 의해 접속된다. 무선전송로(103)에는 센터국(101)으로부터 단말장치(102)로의 다운 링크가 적어도 형성된다. 센터국(101)은 지도서버(1011)와 안테나(1012)를 구비한다. 지도서버(1011)에는 제 1 기억장치(1013), 판독제어부(1014), 패킷조립부(1015) 및 송신부(1016)를 포함한다. 단말장치(102)는 전형적으로 카 네비게이션 시스템으로서, 안테나(1021), 수신부(1022), 패킷분해부(1024) 및 파일관리부(1025)를 포함하는 데이터 처리부(1023)와 제 2 기억장치(1026)를 구비한다.
다음에 센터국(101)의 구성을 설명한다. 제 1 기억장치(1013)에는 단말장치(102)에 제공 가능한 지도파일(CF)이 하나 이상 축적된다. 지도파일(CF)의 상세한 내용은 후술된다. 제 1 기억장치(1013)는 전형적으로는 하드 디스크 드라이브, CD-ROM 드라이브 또는 DVD-ROM 드라이브로 구성된다.
판독제어부(1014)는 필요에 따라서 제 1 기억장치(1013)에서 지도파일(CF)의일부분을 단말장치(102)에 제공해야 하는 지도데이터(CD)로서 판독한다. 이 지도데이터(CD)의 상세한 내용은 후술된다. 판독된 지도데이터(CD)는 패킷조립부(1015)로 출력된다.
패킷조립부(1015)는 입력된 지도데이터(CD)를 기초로 패킷(P)을 조립한다(어셈블리한다). 패킷조립부(1015)의 상세한 처리 및 패킷(P)의 형식은 후술된다. 조립된 패킷(P)은 송신부(1016)로 출력된다.
송신부(1016)는 입력된 패킷(P)을 안테나(1012)를 통하여 무선전송로(103)로 송출하고, 이에 의해 지도데이터(CD)는 패킷(P)으로서 단말장치(102)로 송신된다. 송신부(1016) 및 안테나(1012)는 전형적으로는 휴대전화 등의 이동체통신장치 또는 지상파 디지털방송 또는 위성디지털방송 등의 방송장치에 의해 실현된다.
다음에 단말장치(102)의 구성에 대해서 설명한다. 수신부(1022)는 센터국(101)에 의해 송신된 패킷(P)을 무선전송로(103)를 통하여 수신한다. 안테나(1021) 및 수신부(1022)는 전형적으로는 휴대전화 등의 이동체통신장치 또는 지상파 디지털방송 또는 위성디지털방송 등의 수신장치를 이용하여 실현된다. 수신부(1022)는 수신한 패킷(P)을 패킷분해부(1024)로 출력한다.
패킷분해부(1024)는 입력된 패킷(P)을 분해(디어셈블리)하여 지도데이터(CD)를 복원한다. 복원된 지도데이터(CD)는 파일관리부(1025)로 출력된다.
파일관리부(1025)는 입력된 지도데이터(CD)를 미리 정해진 순서에 따라서 처리한다. 이 처리 순서는 후술된다. 이 처리에 의해 지도파일(CF)이 작성된다. 지도파일(CF)은 센터국(101)측의 지도파일(CF) 지도데이터와 동일한 구조를 갖는다. 지도파일(CF)의 상세한 내용은 후술된다.
제 2 기억장치(1026)는 판독 및 기록이 가능하고, 대용량의 기억매체를 갖는다. 제 2 기억장치(1026)는 전형적으로는 HDD, DVD-RAM 구동장치에 의해 구성된다. 이 기억장치 상에 파일관리부(1025)에 의해 생성된 지도파일(CF)이 기록된다. 또, 주지와 같이 제 2 기억장치(1026)는 클러스터단위로 기억영역을 관리한다.
또한, 데이터 처리부(1023)는 상기 복호나 파일관리 이외에도 다양한 처리(예를 들면 경로탐색, 맵 매칭 또는 경로안내)를 실시한다. 또한 데이터 처리부(1023)는 필요에 따라서 제 2 기억장치(1026) 내의 지도파일(CF)을 부분적으로 추출하여 후술하는 출력장치로 출력한다. 또, 단말장치(102)는 도시된 구성 이외에도 입력장치 및 출력장치를 구비한다. 그러나, 이들 처리, 입력장치 및 출력장치는 본원 발명의 포인트가 아니므로 상세히 설명하지 않고, 또한 도시도 하지 않는다.
입력장치 및 출력장치를 간단하게 설명한다. 입력장치는 단말장치(102)의 사용자에 의해 조작된다. 사용자는 입력장치를 통하여 지도의 스크롤 또는 축척변경 등을 단말장치(102)에 대하여 요구한다. 또, 출력장치는 주로 디스플레이 및 스피커로 구성된다. 디스플레이에는 필요에 따라서 지도가 표시된다. 또한 디스플레이에는 데이터 처리부(1023)가 실시한 경로탐색처리 또는 경로안내처리의 결과도 표시하는 경우가 있다. 스피커는 데이터 처리부(1023)가 실시한 경로안내처리의 결과를 음성에 의해 사용자에게 제공한다.
다음에 도 53을 참조하여 각 지도파일(CF)의 구조를 설명한다. 우선, 도 53의 (a)와 같이 어떤 범위의 지도(α)는 미리 정해진 형상(본 실시형태에서는 편의상 장방형형상이 된다)의 M×N개(M 및 N은 임의의 자연수)의 영역으로 구획되어 유닛(U0,0∼UM-1,N-1)이 작성된다. 유닛(U0,0∼UM-1,N-1)은 각각 데이터화되고, 유닛데이터(UD0,0∼UDM-1,N-1)가 생성된다. 유닛데이터(UD0,0∼UDM-1,N-1)는 후술하는 유닛레코드(UR0,0∼URM-1,N-1)의 일부를 구성한다. 지도파일(CF)은 각 유닛(U0,0∼UM-1,N-1)을 기초로 작성되고, 제 1 기억장치(1013)의 소정 어드레스영역에 저장된다.
각 지도파일(CF)은 도 53의 (b)와 같이 파일헤더(FH), 유닛관리정보(MIUNIT), M×N개의 유닛레코드(UR0,0∼URM-1,N-1)로 구성된다. 파일헤더(FH)에는 지도파일(CF)(지도(α))이 커버하는 범위를 특정하기 위한 정보가 기술된다. 보다 구체적으로는 파일헤더(FH)는 최소 위도(LATMIN) 및 경도(LONMIN), 최대 위도(LATMAX) 및 경도(LONMAX), 위도방향의 실거리(DLAT) 및 경도방향의 실거리(DLON)를 포함한다. 여기에서 LATMIN, LONMIN, LATMAX및 LONMAX는 도 53의 (a)에 도시한 바와 같이 지도(α)의 최소위도, 최소경도, 최대위도 및 최대경도를 나타낸다. 또, DLAT및 DLON는 도 53의 (a)에 도시한 바와 같이 지도(α)의 위도방향 및 경도방향의 실제거리를 나타낸다. 이렇게 LATMIN, LONMIN, LATMAX, LONMIN, DLAT및 DLON은 지도파일(CF)(즉 지도(α))이 커버하는 범위를 규정한다.
유닛관리정보(MIUNIT)에는 각 유닛레코드(UR0,0∼URM-1,N-1)를 관리하기 위한 정보가 기술된다. 보다 구체적으로는 유닛 관리정보(MIUNIT)는 지도파일(CF)에 포함되는 유닛레코드의 수(NOU)와 각 유닛레코드의 오프셋값(X0,0∼XM-1,N-1)을 포함한다. 여기에서 NOU는 M×N의 값이다. 이 오프셋값(X0,0∼XM-1,N-1)은 이 지도파일(CF)이 저장되어 있는 선두의 어드레스(제 1 기억장치(1013)에서 저장위치)로부터 각 유닛레코드(UR0,0∼URM-1,N-1)가 저장되는 선두 어드레스까지의 오프셋이다. 도 53의 (b)에는 유닛레코드(UR0,0)의 오프셋값(X0,0)이 예시되어 있다.
각 유닛레코드(UR0,0∼URM-1,N-1)는 유닛관리정보(MIUNIT)의 오프셋값(X0∼XN-1)에 의해 특정되는 어드레스를 기준으로 하여 제 1 기억장치(1013)의 기억매체에 저장된다. 또, 유닛레코드(UR0,0∼URM-1,N-1)는 도 54와 같이 유닛데이터(U0,0∼UM-1,N-1)를 포함한다. 또, 각 유닛데이터(U0,0∼UM-1,N-1)에는 유닛헤더(UH0,0∼UHM-1,N-1)가 부가된다. 이에 의해 각 유닛레코드(UR0,0∼URM-1,N-1)가 구성된다.
이하, 각 유닛레코드(UR)를 구체적으로 설명하기 위해서 유닛레코드(UR0,0)를 예로 든다. 우선, 유닛데이터(UD0,0)는 도 53에 도시한 바와 같이 지도(α)가 구획된 영역의 하나를 데이터화한 것이며, 대응하는 유닛(U0,0)이 나타내는 영역의 지도를 구성하는 실데이터이다. 또한, 이하 설명을 명확하게 하기 위해 유닛(U0,0)이 나타내는 영역의 지도를 지도(β0,0)로 기록한다. 유닛데이터(UD0,0)는 보다 구체적으로는 지도(β0,0)에 대하여 배경데이터(BD0,0), 문자기호데이터(CD0,0) 및 도로네트워크데이터(ND0,0)로 구성된다.
배경데이터(BD0,0)는 지도(β0,0) 상의 하천, 철도, 녹지대, 건조물, 다리 등을 나타내기 위한 도형데이터이다. 배경데이터(BD0,0)는 도 54에 되시한 바와 같이 기본배경 데이터테이블(BBD0,0)과 상세배경 데이터테이블(BBD0,0)로 구성된다. 기본배경 데이터테이블(BBD0,0)에는 도 55의 (a)에 도시한 바와 같이 하천, 철도 및 녹지대 등의 지도(β0,0)상의 기본적인 요소(즉 배경)를 표시하기 위한 도형데이터가 기록된다. 상세배경 데이터테이블(DBD0,0)에는 지도(β0,0)의 기본적인 배경을 보다 상세하게 표시하기 위해서 도 55의 (b)와 같이 건조물, 다리 등의 도형데이터가 기록된다.
또, 기본배경 데이터테이블(BBD0,0) 및 상세배경 데이터테이블(DBD0,0)은 도 54에 도시한 바와 같이 서로 독립된 구조를 갖는다. 이에 의해 센터국(101)과 단말장치(102)는 기초배경 데이터테이블(BBD0,0) 및 상세배경 데이터테이블(DBD0,0)을 분리하여 독립적으로 이용하는 것이 가능하게 된다. 즉, 단말장치(102)는 도 55의 (a)와 같이 기본배경 데이터테이블(BBD0,0)을 단일체로 표시할 수 있다. 또한, 단말장치(102)는 도 55의 (c)와 같이 기본배경 데이터테이블(BBD0,0)에 상세배경 데이터테이블(DBD0,0)을 중첩하여 표시할 수도 있다.
또, 지도(β0,0)의 배경은 기본배경 데이터테이블(BBD0,0)을 표시하는 것과 상세배경 데이터테이블(DBD0,0)을 표시하는 것이 중첩됨으로써 구성된다. 즉, 보는방법을 바꾸면 상세배경 데이터테이블(DBD0,0)은 배경데이터(BD0,0)와 기본배경 데이터테이블(BBD0,0)의 차분데이터이다.
또, 문자기호데이터(CD0,0)는 지도(β0,0) 상의 문자열 및/또는 지도기호를 나타내는 데이터이다. 이 문자기호데이터(CD0,0)에 의해 지명, 도로명칭, 시설명칭, 지도기호 등이 지도(β0,0) 상에 표시된다. 문자기호데이터(CD0,0)는 도 54에 도시한 바와 같이 기본문자기호 데이터테이블(BCD0,0)과 상세문자기호 데이터테이블(DCD0,0)로 구성된다. 기본문자기호 데이터테이블(BCD0,0)에는 도 56의 (a)에 도시한 바와 같이 지명, 도로명칭, 지도기호 등의 지도(β0,0)를 구성하기 위한 기본적인 데이터가 기록된다. 상세문자기호 데이터테이블(DCD0,0)에는 도 56의 (b)와 같이 공원, 철도, 다리 및 공장의 명칭 등의 지도(β0,0)를 상세하게 표시하기 위해서 필요한 데이터가 기록된다.
또, 기본문자기호 데이터테이블(BCD0,0) 및 상세문자기호 데이터테이블(DCD0,0)은 도 54에 도시한 바와 같이 서로 독립된 구조를 갖는다. 이에 의해 기본문자기호 데이터테이블(BCD0,0) 및 상세문자기호 데이터테이블(DCD0,0)은 독립적으로 사용되는 것이 가능해진다. 즉, 단말장치(102)가 도 56의 (a)와 같이 기본문자기호 데이터테이블(BCD0,0)을 단일체로 표시하거나, 도 56의 (c)와 같이 기본문자기호 데이터테이블(BCD0,0)에 상세문자기호 데이터테이블(DCD0,0)을 중첩하여 표시하거나 할 수 있다.
또, 상세문자기호 데이터테이블(DCD0,0)은 문자기호데이터(CD0,0)와 기본문자기호 데이터테이블(BCD0,0)의 차분데이터이다.
또한 도로 네트워크데이터(ND0,0)는 배경데이터(BD0,0) 및 문자기호데이터(CD0,0)와 함께 이용되고, 지도(β0,0) 상에 도로를 표시하기 위한 데이터이다. 이 도로 네트워크데이터(ND0,0)는 또한 맵매칭, 경로탐색 또는 경로안내의 각 처리에 사용되는 경우도 있다. 도로 네트워크데이터(ND0,0)는 주요간선 네트워크 데이터테이블(MND0,0)과 세가로 네트워크 데이터테이블(SND0,0)로 구성된다. 주요간선 네트워크 데이터테이블(MND0,0)에는 도 57의 (a)에 도시한 바와 같이 폭이 상대적으로 넓은(예를 들면 5.5m 이상)도로, 즉 주요도로용 도로 네트워크 데이터가 기록된다. 또한 주요간선 네트워크 데이터테이블(MND0,0)에는 도로 네트워크 데이터가 고속도로, 일반국도 및 도(都)· 도(道)·부(府)·현도 등의 도로 종별마다기록되는 것이 바람직하다. 세가로 네트워크 데이터테이블(SND0,0)에는 도 57의 (b)에 도시한 바와 같이 폭이 상대적으로 좁은(예를 들면 3.0m 이상 또는 5.5m 미만) 도로, 즉 세가로용 도로 네트워크 데이터가 기록된다.
또, 주요간선 네트워크 데이터테이블(MND0,0) 및 세가로 네트워크 데이터테이블(SND0,0)도 또한 기본배경 데이터테이블(BBD0,0) 및 상세배경 테이터테이블(DBD0,0)과 동일한 독립적인 구조를 갖고 있다. 그 때문에, 단말장치(102)는 도 57의 (a)와 같이 주요간선 네트워크 데이터테이블(MND0,0)을 단일체로 이용하여 주요도로만을 표시시킬 수 있다. 또, 단말장치(102)는 도 57의 (b)와 같이 세가로 네트워크 데이터테이블(SND0,0)을 단일체로 이용하여 세가로만을 표시시킬 수도 있다. 또한, 단말장치(102)는 도 57의 (c)와 같이 주요간선 네트워크 데이터테이블(MND0,0)에 세가로 네트워크 데이터테이블(SND0,0)을 중첩하여 이용하여 주요도로 및 세가로를 표시시킬 수 있다.
또, 세가로 네트워크 데이터테이블(SND0,0)은 도로 네트워크 데이터(ND0,0)와 주요간선 네트워크 데이터테이블(MND0,0)의 차분데이터이다.
또한, 단말장치(102)는 맵매칭처리 등의 시에 주요간선 네트워크 데이터테이블(MND0,0)을 단독으로 이용하거나, 주요간선 네트워크 데이터테이블 및 세가로 네트워크 데이터테이블(SND0,0)의 양쪽을 이용할 수도 있다.
또, 주요도로와 세가로의 접속관계를 찾아가는 경우에도 주요간선 네트워크 데이터테이블(MND0,0) 및 세가로 네트워크 데이터테이블(SND0,0)이 이용된다. 이러한 접속관계를 찾아가는 경우, 주요도로와 세가로의 교차점을 나타내는 노드가 이용된다.
또, 도 58의 (a)와 같이 기본배경 데이터테이블(BBD0,0), 기본문자기호 데이터테이블(BCD0,0), 주요간선 네트워크 데이터테이블(MND0,0)이 중첩되고, 이에 의해 단말장치(102)는 상대적으로 개략적인 지도(β0,0)를 작성할 수 있다. 한편, 상세배경 데이터테이블(DBD0,0), 상세문자기호 데이터테이블(DCD0,0) 및 세가로 네트워크 데이터테이블(SND0,0)이 도 58의 (a)와 같이 구성된 개략적인 지도(β0,0)에 중합됨으로써 도 58의 (b)와 같은 보다 상세한 지도(β0,0)를 구성할 수 있다.
이상, 유닛데이터(UD0,0)의 상세한 구조에 대하여 설명하였다. 다른 유닛데이터(UD0.1, …UD0,N-1, UD1,0, …UDM-1,N-1)도 또한 유닛데이터(UD0,0)와 마찬가지로 대응하는 범위에 대하여 도 54∼도 58을 참조하여 설명한 바와 같은 구조를 갖는다.
또, 유닛레코드(UR0,0∼URM-1,N-1)는 상술한 바와 같이 유닛헤더(UH0,0∼UHM-1,N-1)를 포함한다. 유닛헤더(UH0,0∼UHM-1,N-1)에는 유닛데이터(UD0,0∼UDM-1,N-1)의 속성정보가 기술된다. 보다 구체적으로는 예를 들면 유닛헤더(UH0,0)에는 유닛데이터(UD0,0)를 특정하기 위한 유닛ID와 기본배경 데이터테이블(BBD0,0), 상세배경 데이터테이블(DBD0,0), 기본문자기호 데이터테이블(BCD0,0), 상세문자기호 데이터테이블(DCD0,0), 주요간선 네트워크 데이터테이블(MND0,0) 및 세가로 네트워크 데이터테이블(SND0,0)의 사이즈가 기술된다. 다른 유닛헤더(UH0.1∼UHM-1,N-1)도 또한 유닛헤더(UH0,0)와 마찬가지로 대응하는 유닛데이터(UD0.1∼UDM-1,N-1)의 속성정보가 기술되다. 유닛헤더(UH0,0∼UHM-1,N-1)내의 각 유닛ID는 대응하는 유닛데이터(UD0,0∼UDM-1,N-1)를 특정시킬 수 있다면 어떠한 정보라도 좋지만, 연속번호 또는 경도 및 위도 등에 의해 이들을 특정하는 것이 전형적이다.
다음에 도 59의 플로우차트를 참조하여 센터국(101)에서 지도데이터의 송신순서에 대하여 설명한다. 상술한 바와 같이 제 1 기억장치(1013)에는 하나 이상의 지도파일(CF)(도 53 및 도 54 참조)이 미리 저장되어 있다. 판독제어부(1014)는 필요에 따라서 제 1 기억장치(1013)에서 미리 정해진 몇개인가의 지도파일(CF)의 일부 또는 전부를 판독한다(스텝(S1001)). 여기에서 지도파일(CF)의 일부는 본 실시형태에서 지도파일(CF)을 구성하는 파일헤더(FH), 유닛관리정보(MIUNIT) 및 몇개인가의 유닛레코드(UR)를 의미한다. 한편, 지도파일(CF)의 전부라는 것은 본 실시형태에서 지도파일(CF)을 구성하는 파일헤더(FH), 유닛관리정보(MIUNIT) 및 모든 유닛레코드(UR)를 의미한다. 이하에서는 판독제어부(1014)에 의해 판독된 일부 또는전부의 지도파일(CF)을 지도데이터(CD)라 한다. 판독된 지도데이터(CD)는 패킷조립부(1015) 내의 기억영역(전형적으로 RAM)에 전개된다.
패킷조립부(1015)는 스텝(S1001) 후, 내부의 기억영역에 전개된 지도데이터(CD)로부터 단말장치(102)에 송신하기 위해서 필요한 파일헤더(FH), 유닛관리정보(MIUNIT)(도 53의 (b) 참조) 및 하나의 유닛레코드(UR)(도 53의 (b) 참조)를 추출한다(스텝(S1002)).
패킷조립부(1015)는 스텝(S1002)에서 얻어진 유닛레코드(UR), 파일헤더(FH) 및 유닛관리정보(MIUNIT)를 기초로 패킷(P)을 조립한다(스텝(S1003)). 또한 스텝(S1003)의 상세한 처리는 후술된다. 조립된 패킷(P)은 송신부(1016)로 출력된다. 송신부(1016)는 입력된 패킷(P)을 안테나(1012)를 통하여 무선전송로(103)로 송출하여, 패킷(P)을 단말장치(102)로 송신한다(스텝(S1004)).
패킷조립부(1015)는 스텝(S1004)의 다음에 내부의 기억영역에 전개된 지도데이터(CD)에 송신해야 하는 유닛데이터(UD)가 또한 존재하는지 여부를 판단한다(스텝(S1005)). 송신해야 하는 유닛데이터(UD)가 아직 존재하는 경우에는 패킷조립부(1015)는 필요한 데이터를 얻기 위해서 스텝(S1002)으로 되돌아간다. 한편, 송신해야 하는 유닛데이터(UD)가 존재하지 않는 경우에는 패킷조립부(1015)는 판독제어부(1014)에 그 취지를 통지한다.
판독제어부(1014)는 패킷조립부(1015)의 통지에 응답하여 스텝(S1001)에서 판독된 지도데이터(CD)를 닫는다(스텝(S1006)). 다음에 판독제어부(1014)는 단말장치(102)에 송신해야 하는 유닛데이터(UD)를 포함하는 지도데이터(CD)(스텝(S1006)에서 닫혀진 것과는 다른 것)가 존재하는지 여부를 판단한다(스텝(S1007)). 다른 지도데이터(CD)가 존재하는 경우, 판독제어부(1014)는 상기 지도데이터(CD)를 판독하기 위해 스텝(S1001)으로 되돌아간다. 한편, 다른 지도데이터(CD)가 없는 경우에는 센터국(101)은 도 59의 플로우차트에 나타낸 일련의 처리를 종료한다.
여기에서 도 60은 지도데이터(CD)로부터 패킷(P)이 생성되기 까지의 과정에서 각 데이터의 구조를 나타내고 있다.
스텝(S1001)(도 59 참조)의 종료시점에서 판독제어부(1014)는 도 60의 (a)에 도시한 바와 같이 지도데이터(CD)를 판독하고 있다. 또, 스텝(S1002)의 종료 시점에서 패킷조립부(1015)는 파일헤더(FH) 및 몇개인가의 유닛레코드(UR)를 유지하고 있다. 도 60의 (a)에서는 유닛레코드(UR0,0)가 유지되는 예가 나타나 있다. 그리고, 패킷조립부(1015)는 스텝(S1003)을 실행한다. 여기에서 도 61은 스텝(S1003)의 상세한 처리 순서를 나타내는 플로우차트이다. 이하, 도 61을 참조하여 패킷조립부(1015)의 처리를 상세하게 설명한다. 최초로 마스터데이터(MD)가 패킷조립부(1015)에 의해 유지되고 있는 파일헤더(FH), 유닛관리정보(MIUNIT) 및 하나의 유닛레코드(UR)에 기초하여 생성된다(스텝(S1101)). 또한 마스터데이터(MD)는 지도파일(CF)로부터 직접적으로 생성되는 것은 아니며, 패킷조립부(1015)가 유지하는 하나의 유닛레코드(UR)에 기초하여 생성된다. 이러한 생성방법이 채용됨으로써 비록 도 59의 스텝(S1001∼S1007)에 있어서 외부적 또는 내부적 요인에 의해 에러가 발생하여도 그 에러의 영향은 1개의 유닛레코드(UZR)에 밖에 미치지 않는다. 즉, 에러의 영향이 지도데이터(CD) 전체에 미치는 것을 피하기 위함이다.
마스터데이터(MD)는 도 60의 (b)에 도시한 바와 같이 데이터헤더(DH)와 데이터부로 구성된다. 여기에서 도 62는 마스터데이터(MD)의 상세한 구조를 나타낸다. 도 62에서 데이터헤더(DH)는 파일ID, 유닛ID 및 유닛사이즈로 구성된다.
파일ID는 이 마스터데이터(MD)의 기초가 되는 지도데이터(CD)(즉 현재 패킷조립부(1015)에 전개되어 있는 것)를 특정하기 위한 코드이다. 이 파일ID의 생성방법의 일례를 설명한다. 패킷조립부(1015)는 파일헤더(FH)를 유지하고 있다. 상술한 바와 같이 파일헤더(FH)에는 지도파일(CF)(지도(α))이 커버하는 범위를 특정하기 위한 정보가 기술된다(도 53의 (b) 참조). 따라서, 파일헤더(FH)는 지도파일(CF)을 특정하는 것도 가능하다. 패킷조립부(1015)는 이 파일헤더(FH)를 이용하여 파일ID를 생성한다.
유닛ID는 이 마스터데이터(MD)의 기초가 되는 유닛레코드(UR)(즉, 스텝(S1002)에서 추출된 것)를 특정하기 위한 코드이다. 패킷조립부(1015)는 스텝(S1002)의 종료 이후, 송신해야 하는 유닛레코드(UR)(도 54 참조)를 유지하고 있다. 패킷조립부(1015)는 유지된 유닛레코드(UR)로부터 유닛ID를 추출한다. 추출된 유닛ID가 데이터헤더(DH)에 설정된다.
또한, 이상의 2개의 ID 및 유닛사이즈는 후술하는 단말장치(102)의 처리에 서 사용된다.
또, 마스터데이터(MD)의 데이터부에는 파일헤더(FH)와 유닛레코드(UR)가 갖는 전체 데이터 또는 일부 데이터가 설정된다. 설정되는 파일헤더(FH) 및 유닛레코드(UR)는 패킷조립부(1015)가 유지하고 있는 것이다. 그런데, 유닛레코드(UR)에는 상술한 바와 같이 각종 테이블이 유지된다(도 54 참조). 이들 각 테이블은 서로 분리가능한 구조를 갖는다. 그를 위해 데이터부는 기본배경 데이터테이블(BBD), 기본문자기호 데이터테이블(BCD), 주요간선 네트워크 데이터테이블(MND)의 기본데이터(즉, 대략적인 지도를 나타내는 데이터)만으로 구성되어도 좋다. 또, 데이터부는 상세배경 데이터테이블(DBD), 상세문자기호 데이터테이블(DCD), 세가로 네트워크 데이터테이블(SND)의 상세데이터만으로 구성되어도 좋다. 이상과 같이 유닛레코드(UR)의 일부분이 데이터분에 설정되는 경우가 있다.
또한 도 54에 도시한 바와 같이 유닛헤더(UH)에는 유닛ID가 포함된다. 이 유닛ID는 데이터헤더(DH)(도 62 참조)에 포함된다. 따라서, 마스터데이터(MD)의 데이터부에 유닛ID가 설정되면 마스터데이터(MD)내에 2개의 유닛ID가 포함되게 된다. 그 때문에 이 데이터부에는 유닛ID가 포함되지 않아도 좋다.
그런데, 데이터헤더(DH)의 데이터사이즈는 데이터부의 사이즈이다. 파일헤더(FH)와 유닛레코드(UR)의 전체 사이즈는 제 1 기억장치(1013)에 지도파일(CF)이 생성된 시점에서 결정되기 때문에 용이하게 구해진다. 또, 데이터부에 부분적인 유닛레코드(UR)가 설정되는 경우에는 대응하는 유닛헤더(UH)에 설정되어 있는 각 사이즈에 기초하여 상기 부분적인 유닛레코드(UR)의 사이즈는 구해진다.
패킷조립부(1015)는 생성된 마스터데이터(MD)를 i개로 분할한다. 이에 의해 도 60의 (c)와 같이 i개의 세그먼트데이터(SD1∼SDi)가 생성된다(스텝(S1102)). 이 스텝(S1102)에 있어서 패킷조립부(1015)는 마스터데이터(MD)에 포함되는 데이터헤더(DH) 및 데이터부(즉 유닛레코드(UR))를 의식하지 않는다. 즉, 어떤 세그먼트데이터(SD)에 데이터헤더(DH)의 일부와 데이터부의 일부가 혼재하는 경우도 일어날 수 있다. 이들 i개의 세그먼트데이터(SD)에는 번호(이후, 세그먼트번호라 함)가 부가된다. 이 세그먼트번호는 세그먼트데이터 상호간에 중복하지 않으며, 또한 연속하는 번호인 것이 바람직하다. 왜냐하면 후술하는 단말장치(102)의 처리가 용이해지기 때문이다.
또한 패킷조립부(1015)는 i개의 각 세그먼트데이터(SD1∼SDi)에 오류정정부호(또는 오류검출부호)를 부가한다(스텝(S1103)). 이에 의해 도 60의 (d)에 도시한 바와 같이 i개의 세그먼트데이터(오류정정부호 붙임)(SD1∼SDi)가 생성된다. 패킷조립부(1015)는 또한 각 세그먼트데이터(오류정정부호 붙임)(SD1∼SDi)를 j개로 분할한다. 이에 의해 도 60의 (e)에 도시한 바와 같이 1개의 세그먼트데이터(SD)에 대해 j개의 패킷이 생성된다(스텝(S1104)). 이상의 처리 결과, 패킷조립부(1015)는 스텝(S1002)에서 추출된 하나의 유닛레코드(UR)을 기초로 전부 i×j개의 패킷(P11, P12, …P1j, …Pij)을 생성한다. 또, 이들 i×j개의 패킷(P11, P12, …P1j, …Pij)에는 각각 번호(이후, 패킷번호라 함)가 부가된다. 이패킷번호는 패킷마다 서로 중복하지 않고 또한 연속하는 번호인 것이 바람직하다. 왜냐하면, 후술하는 단말장치(102)의 처리가 용이해지기 때문이다. 이 패킷번호에 의해 단말장치(102)는 각각 송신되는 i×j개의 패킷(P11, P12, …P1j, …Pij)이 모두 정리되었는지 여부를 용이하게 판단할 수 있게 된다. 이 스텝(S1104)이 종료하면, 패킷조립부(1015)는 서브루틴인 도 61의 처리에서 빠져나와 도 59의 처리로 돌아간다. 그리고 스텝(S1004)이 실시된다. 이상의 각 패킷(P11, P12, …P1j, …Pij)은 스텝(S1004)에 있어서 송신부(1016)로부터 안테나(1012)를 통하여 무선전송로(103)로 차례로 송출되고, 단말장치(102)에 송신된다.
다음에, 도 63의 플로우차트를 참조하여 단말장치(102)에서 지도데이터의 수신순서에 대하여 설명한다. 센터국에 의해 송신된 각 패킷(P11, P12, …P1j, …Pij)은 무선전송로(103)를 통하여 단말장치(102)의 안테나(1021)에 입력된다. 수신부(1022)는 안테나(1021)로부터 출력되는 패킷(P11, P12, …P1j, …Pij)을 차례로 수신한다(스텝(S1201)). 또, 수신부(1022)는 도시하지 않은 버퍼메모리를 갖는다. 수신부(1022)는 수신된 각 패킷(P11, P12, …P1j, …Pij)을 버퍼메모리에 차례로 저장한다.
패킷분해부(1024)는 수신부(1022)의 버퍼메모리에 정기적으로 액세스하여, 센터국(101)에 의해 송신된 i×j개의 패킷(P11, P12, …P1j, …Pij)이 버퍼메모리 내에 정리되어 있는지 여부를 판단한다(스텝(S1202)). 스텝(S1202)의 판단은 각 패킷(P11, P12, …P1j, …Pij)에 부가된 패킷번호에 기초하여 실시된다. 보다 구체적으로는 패킷번호가 연속 번호라면 패킷분해부(1024)는 1에서 (i×j)까지의 패킷번호가 모두 정리되어 있는지 여부를 판단한다.
스텝(S1202)에서 패킷(P)이 모두 정리되어 있지 않은 경우, 패킷분해부(1024)는 스텝(S1203)으로 진행하지 않고, 스텝(S1201)이 재차 실행된다. 그 결과, 수신부(1022)는 부족분의 패킷(P)을 수신한다.
한편, 스텝(S1202)에서 패킷(P)이 모두 정리되어 있는 경우, 패킷분해부(1024)는 스텝(S1203)으로 진행한다. 패킷분해부(1024)는 스텝(S1201)에서 수신된 패킷(P11, P12, …P1j, …Pij)을 분해하여 마스터데이터(MD)를 복원한다(스텝(S1203)). 복원된 마스터데이터(MD)는 파일관리부(1025)로 출력된다. 파일관리부(1025)는 입력된 마스터데이터(MD)를 기초로 지도파일(CF)을 생성한다. 생성된 지도파일(CF)은 제 2 기억장치(1026)에 저장된다(스텝(S1204)).
스텝(S1240) 후, 데이터 처리부(1023)는 수신해야 하는 일련의 패킷(P)이 아직 있는지 여부를 판단한다(스텝(S1205)). 수신해야 하는 패킷(P)이 있는 경우 스텝(S1201)으로 되돌아가 패킷(P)의 수신처리가 계속 실시된다. 한편, 수신해야 하는 패킷(P)이 없는 경우에는 도 63의 처리를 종료한다.
여기에서 도 64는 도 63의 스텝(S1203)의 상세한 처리 순서를 나타내는 플로우차트이다. 또, 도 65는 패킷(P11, P12, …P1j, …Pij)으로부터 지도파일(CF)이 생성되기 까지의 과정에서 각 데이터의 구조를 나타내고 있다. 상술에서 알 수 있듯이 도 63의 스텝(S1203)이 개시되는 시점에서 수신부(1022)에는 도 65의 (a)에 도시한 바와 같이 일련의 패킷(P11, P12, …P1j, …Pij)이 정리되어 있다. 패킷분해부(1024)는 수신부(1022)에 유지되어 있는 패킷(P11, P12, …P1j, …Pij)에서 처리해야 하는 패킷(P)을 얻는다(스텝(S1301)). 이제 패킷분해부(1024)는 패킷(P11, P12, …Pij)을 얻는다고 가정한다.
다음에 패킷분해부(1024)는 스텝(S1301)에서 얻어진 각 패킷(P)으로부터 패킷번호를 떼어낸다. 패킷분해부(1024)는 번호가 떼어진 각 패킷(P)을 분해하여 도 65의 (b)에 도시한 바와 같이 하나의 세그먼트데이터(SD)를 복원한다(스텝(S1302)). 상술의 가정에 따르면 패킷(P11, P12, …P1j)이 하나로 되어, 그 결과 세그먼트데이터(SD1)가 복원된다.
각 세그먼트데이터(SD)에는 오류정정부호(또는 오류검출부호)가 부가되어 있다. 스텝(S1302)의 다음에 패킷분해부(1024)는 오류정정부호를 이용하여 복원된 세그먼트데이터(오류정정부호 붙임)(SD)에 발생할 가능성이 있는 오류를 정정한다(스텝(S1303)).
다음에, 패킷분해부(1024)는 세그먼트데이터(오류정정부호 붙임)(SD)로부터 오류정정부호를 떼어내고, 이것에 의해 도 65의 (c)에 도시한 바와 같이 세그먼트데이터(오류정정부호 없음)(SD)가 복원된다(스텝(S1304)). 복원된 세그먼트데이터(SD)는 패킷분해부(1024)의 기억영역에 유지된다. 상술의 가정에따르면 세그먼트데이터(SD1)에 오류정정이 실시된 후, 패킷분해부(1024)의 기억영역에 유지된다.
스텝(S1304)의 다음에 패킷분해부(1024)는 수신부(1022) 내에 처리해야 하는 패킷(P)이 남아있는지 여부를 판단한다(스텝(S1305)). 처리해야 하는 패킷(P)이 남아있는 경우, 패킷분해부(1024)는 스텝(S1301)으로 되돌아가 스텝(S1301)∼스텝(S1304)을 실시하여 도 65의 (a)∼(c)에 도시한 바와 같이 패킷(P)으로부터 세그먼트데이터(SD)를 복원한다. 본 설명에서는 도 64의 처리의 개시시점에서 수신부(1022)에는 (i×j)개의 패킷(P)이 있다. 따라서, 스텝(S1201)∼스텝(S1205)으로 구성되는 루프는 i회 반복된다. 그 결과, i개의 세그먼트데이터(SD1∼SDi)가 복원된다.
이 루프가 필요횟수만큼 반복되면, 수신부(1022) 내에는 처리해야 하는 패킷(P)이 없어진다. 이 상태에서 스텝(S1305)의 판단이 실시되면, 패킷분해부(1024)는 스텝(S1306)으로 진행한다. 처리해야 하는 패킷(P)이 없어진 시점에서 i개의 세그먼트데이터(SD1∼SDi)가 패킷분해부(1024)에 유지된다. 또, 상술한 바와 같이 각 세그먼트데이터(SD1∼SDi)에는 세그먼트 번호가 붙여져있다. 패킷분해부(1024)는 이 세그먼트번호에 따라서, 즉 세그먼트번호가 연속하도록 세그먼트데이터(SD1∼SDi)를 차례로 나열한다. 그 후 세그먼트번호는 각 세그먼트데이터(SD1∼SDi)에서 제거된다. 패킷분해부(1024)는 세그먼트번호가 제거된 세그먼트데이터(SD1∼SDi)를 하나로 한다. 그 결과, 도 65의 (d)에 도시한 바와 같이 마스터데이터(MD)가 복원된다(스텝(S1306)). 복원된 마스터데이터(MD)는 파일관리부(1025)로 출력된다(스텝(S1307)).
또한, 본 지도제공 시스템에 한정되지 않고, 통신시스템에서는 통신장해가 일어날 수 있다. 따라서, 단말장치(102)는 모든 세그먼트데이터(SD)를 바르게 복원할 수 있다고는 한정하지 않는다. 여기에서 바르게 복원된 세그먼트데이터(SD)는 센터국(101)이 생성한 것과 동일한 세그먼트데이터(SD)를 의미한다. 예를 들면 세그먼트데이터(SD2)가 바르게 복원되지 않은 경우에 있어서, 다른 세그먼트데이터(SD1, SD3∼SDi)가 바르게 복원된 경우를 상정한다. 이러한 경우, 패킷분해부(1024)는 세그먼트데이터(SD1, SD3∼SDi)에 부가된 오류정정부호를 이용하여 세그먼트 데이터(SD2)를 바른 것으로 복원할 수도 있다.
파일관리부(1025)는 마스터데이터(MD)의 입력에 기인하여 스텝(S1024)을 개시한다. 이 스텝(S1104)은 상술한 바와 같이 마스터데이터(MD)로부터 지도파일(CF)을 생성하는 처리와, 생성된 지도파일(CF)을 제 2 기억장치(1026)에 저장하기 위한 처리이다. 여기에서 도 66은 도 63의 스텝(S1204)의 상세한 처리 순서를 나타내는 플로우차트이다.
그런데, 제 2 기억장치(1026)는 스텝(S1204)의 개시시점에서 이전에 생성된 지도파일(CF)을 이미 기억하고 있는 경우가 있다. 또, 지도파일(CF)이 기억되어 있지 않은 경우도 있다. 파일관리부(1025)는 마스터데이터(MD)의 입력 후, 제 2기억장치(1026) 내에 지도파일(CF)이 저장되어 있는지 여부를 판단한다(스텝(S1401)). 파일관리부(1025)는 지도파일(CF)이 있는 경우에 후술하는 스텝(S1404)으로 진행한다. 한편, 파일관리부(1025)는 지도파일(CF)이 없는 경우에 금회의 마스터데이터(MD)를 기초로 완전히 새로운 지도파일(CF)을 작성한다(스텝(S1402)). 또한 이 지도파일(CF)은 지도파일(CF)과 동일한 데이터구조를 갖는다(도 53의 (b) 및 도 54 참조).
여기에서 지도파일(CF)의 작성방법을 설명한다. 마스터데이터(MD)는 도 62에 도시한 바와 같이 지도파일ID, 유닛ID 및 데이터사이즈를 데이터헤더(DH)에 갖는다. 또한, 마스터데이터(MD)는 파일헤더(FH)와 전부 또는 일부의 유닛레코드(UR)를 데이터부에 갖는다. 파일관리부(1025)는 마스터데이터(MD)로부터 파일헤더(FH)를 추출한다.
상술한 바와 같이 마스터데이터(MD)에는 1개의 유닛레코드(UR)밖에 포함되지 않는다. 또, 파일관리부(1025)는 금회 완전히 새로운 지도파일(CF)을 생성한다. 따라서 파일관리부(1025)는 초기값 「1」의 유닛수(NOU)를 생성한다. 또한, 파일관리부(1025)는 파일헤더(FH) 및 유닛수(NOU)의 데이터사이즈로부터 금회 얻어진 유닛레코드(UR)까지의 오프셋값(X0,0)을 구한다. 이에 의해 유닛관리정보(MIUNIT)가 생성된다.
이에 의해 파일관리부(1025)는 완전히 새로운 지도파일(CF)을 생성하기 위해서 필요한 정보를 모두 얻게 된다. 파일관리부(1025)는 금회 얻어진파일헤더(FH), 유닛관리정보(MIUNIT) 및 유닛레코드(UR)를 하나로 하여 지도파일(CF)을 생성한다. 이 지도파일(CF)의 데이터구조는 도 67에 도시한 바와 같다. 이상과 같이 하여 생성된 지도파일(CF)은 제 2 기억장치(1026) 내에 저장된다(스텝(S1403)).
다음에 스텝(S1401)에서 지도파일(CF)을 찾아낸 경우의 처리에 대하여 설명한다. 이 경우, 스텝(S1404)이 실시된다. 파일관리부(1025)는 금회 입력된 마스터데이터(MD)로부터 파일ID를 추출한다. 파일ID는 상술한 바와 같이 마스터데이터(MD) 내의 유닛레코드(UR)가 어느 지도파일(CF)에 속하고 있는지를 특정한다. 이 파일ID는 도 61에 참조하여 상술한 바와 같이 패킷조립부(1015)에 의해 지도파일(CF)의 파일헤더(FH)를 이용하여 생성되고 있다.
또, 파일관리부(1025)는 제 2 기억장치(1026) 내의 각 지도파일(F)의 파일헤더(FH)를 추출한다. 파일헤더(FH)는 지도파일(CF)이 커버하는 범위를 특정하는 것이다. 지도파일(CF)의 파일헤더(FH)는 스텝(S1402)에서 설명한 바와 같이 센터국(101)측에서 관리되는 지도파일(CF)을 기초로 작성되고 있다.
따라서, 파일ID와 파일헤더(FH)에 동일성이 있다면 금회 입력된 유닛레코드(UR)는 지도파일(CF)의 일부를 구성하게 된다. 따라서, 파일관리부(1025)는 양자의 동일성을 판단한다(스텝(S1404)).
스텝(S1404)에서 동일성이 없다고 판단되면 입력된 유닛레코드(UR)를 구성요소로 하는 지도파일(CF)이 작성되고 있지 않은 것을 의미한다. 이 경우, 파일관리부(1025)는 상술의 스텝(S1402, S1403)을 실행한다. 즉, 전혀 새로운 지도파일(CF)이 생성된 후에 제 2 기억장치(1026)에 저장된다.
한편, 스텝(S1404)에서 파일ID 및 파일헤더(FH)에 동일성이 있다고 판단되면, 입력된 유닛레코드(UR)를 구성요소로 하는 지도파일(CF)이 이미 생성되어 있는 것을 의미한다. 이 경우, 파일관리부(1025)는 이 지도파일(CF)을 처리대상으로서 선택한다. 파일관리부(1025)는 이 처리대상의 지도파일(CF)을 열고(스텝(S1405)), 입력된 유닛레코드(UR)를 처리대상으로서 선택된 지도파일(CF)에 추가한다(스텝(S1406)). 즉, 스텝(S1406)에서는 입력된 유닛레코드(UR)와 지도파일(CF)이 하나로 되어 갱신된 지도파일(CF)이 생성된다.
스텝(S1406)에 대하여 보다 상세하게 설명한다. 파일관리부(1025)는 금회 마스터데이터(MD)로부터 유닛ID를 추출한다. 이후, 입력된 마스터데이터(MD)로부터 추출된 유닛ID를 제 1 유닛ID라 한다. 제 1 유닛ID는 도 62를 참조하여 설명한 바와 같이 금회 입력된 마스터데이터(MD)의 기초가 된 유닛레코드(UR)를 특정한다. 또, 파일관리부(1025)는 스텝(S1405)에서 열려진 지도파일(CF)로부터 모든 유닛ID를 추출한다. 이후, 지도파일(CF)로부터 추출된 각 유닛ID를 제 2 유닛ID라 한다. 제 2 유닛ID 중에는 제 1 유닛ID와 일치하는 것이 포함되어 있지 않는 경우와, 일치하는 것이 포함되어 있는 경우가 있다.
제 1 및 제 2 유닛ID가 일치하지 않는 경우에 파일관리부(1025)는 금회 입력된 마스터데이터(MD)로부터 유닛레코드(UR)를 추출하여, 도 68에 도시한 바와 같이 현재 열려져 있는 지도파일(CF)에 추가하여 상기 지도파일(CF)을 갱신한다.
제 1 및 제 2 유닛ID가 일치하는 경우, 금회 입력된 유닛레코드(UR)는 과거에 센터국(101)에 의해 단말장치(102)에 제공되어 있는 것이 된다. 예를 들면 도 54에 도시한 구조를 갖는 유닛레코드(UR)에 있어서 기본배경 데이터테이블(BBD), 기본문자기호 데이터테이블(BCD), 주요간선 네트워크 데이터테이블(MND) 등의 기본데이터(개략 데이터)만이 스텝(S1204)의 시점에서 단말장치(102)에 이미 제공되고 있는 경우가 있다. 이 경우, 현재 열려져 있는 지도파일(CF)은 도 69와 같은 구조를 갖는다. 파일관리부(1025)는 이 경우 도 70에 도시한 바와 같이 금회 입력된 마스터데이터로부터 추출된 유닛레코드(UR)를 현재 열려져 있는 지도파일(CF)에 있어서 동일 유닛ID가 붙여져 있는 유닛레코드(UR)에 추가한다. 이에 의해 지도파일(CF)이 갱신된다.
파일관리부(1025)는 또한 금회 입력된 마스터데이터(MD)의 데이터사이즈에 따라서 유닛관리정보(MIUNIT)를 갱신한다(스텝(S1407)). 다음에 파일관리부(1025)는 갱신된 지도파일(CF)을 제 2 기억장치(1026)에 저장한다(스텝(S1408)).
이상과 같이 본 지도제공 시스템에서는 제 1 기억장치(1013)에는 지도파일(CF)이 저장된다. 패킷조립부(1015)는 단말장치(102)에 송신해야 하는 부분적인 지도만을 판독제어부(1014)에서 수취하고, 상기 지도를 나타내는 일련의 패킷(P)을 생성한다. 이 일련의 패킷(P)이 무선전송로(103) 상에 전송된다. 이 무선전송로(103) 상에는 부분적인 지도를 나타내는 데이터밖에 송신되지 않는다. 그 때문에 본 지도제공 시스템은 비록 지도파일(CF) 자체가 큰 사이즈일지라도 무선전송로(103)에 송출하는 데이터의 양을 억제할 수 있다. 이에 의해 무선전송로(103)는 폭주(輻輳)하기 어려워진다.
또, 단말장치(102)는 부분적인 지도를 나타내는 데이터를 차례로 수신하게 된다. 그러나, 단말장치(102)는 초기에는 부분적인 지도데이터를 개별로 파일화하게 된다. 그러나, 단말장치(102)는 소정 조건을 만족하는 지도파일(CF)이 존재하는 경우에는 수신된 부분적인 지도데이터를 상기 지도파일(CF)에 추가하여 하나로 한다. 그 때문에 본 지도제공 시스템은 단말장치(102)에 있어서 대량의 파일이 발생하는 것을 억제할 수 있다. 그 때문에, 제 2 기억장치(1026) 내에는 빈 영역을 갖는 클러스터가 생기기 어렵게 된다. 그 결과, 본 지도제공 시스템은 제 2 기억장치(1026)의 기억영역을 효과적으로 이용할 수 있다.
또, 지도파일(CF)은 도 53에 도시한 바와 같이 미리 정해진 범위의 지도(α)가 복수의 영역으로 구획됨으로써, 즉 유닛(U) 단위로 구성된다. 이러한 지도(α)의 유닛화에 의해 판독제어부(1014)는 필요한 부분의 지도를 용이하게 제 1 기억장치(1013)에서 판독할 수 있다. 또한 이 유닛화에 의해 센터국(101)은 무선전송로(103)가 폭주하지 않는 최적량의 데이터를 용이하게 상기 무선전송로(103)로 송출할 수 있다.
또한, 센터국(101)이 복수의 유닛레코드(UR)를 송신한 경우에 있어서도 통신에러에 의해 단말장치(102)가 어떠한 유닛레코드(UR)도 수신할 수 없는 경우가 있다. 이러한 경우, 단말장치(102)는 수신할 수 있는 유닛레코드(UR)를 이용하여 지도파일(CF)을 작성한다. 단말장치(102)는 작성된 지도파일(CF)에 기초하여 각종처리를 실시할 수 있다. 즉, 센터국(101)으로부터 송신된 유닛레코드(UR)의 일부가 누락되어도 그 누락에 의한 영향은 단말장치(102)가 수신한 다른 유닛레코드에는 미치지 않는다. 이러한 효과도 지도의 유닛화에 의해 생긴다.
또, 유닛레코드(UR) 내에 있어서 지도의 기본적인 데이터(개략 데이터)와 상기 지도의 상세한 데이터는 서로 독립된 복수의 테이블에 기술된다. 이에 의해 각 테이블은 비록 1유닛레코드(UR) 내에 저장되어 있어도 독립적으로 사용되는 것이 가능해진다. 즉, 예를 들면 센터국(101)은 단말장치(102)에 지도를 제공할 때에 기본데이터(개략데이터)를 단독으로 송신하거나, 상세한 데이터를 단독으로 송신하거나, 쌍방을 조합하여 송신하거나 하는 것이 가능해진다. 이에 의해 센터국(101)은 단말장치(102)의 상황이나 용도에 적합한 지도를 제공하는 것이 가능해진다.
예를 들면 단말장치(102)측이 상세한 지도보다도 광범위한 지도를 빠르게 수신하고 싶은 경우에는 센터국(101)은 기본데이터(개략데이터)만을 우선적으로 송신할 수 있다. 또한 단말장치(102)가 기본데이터(개략데이터)를 완전히 수신한 후에 센터국(2)이 상세데이터를 송신할 수도 있다. 이에 의해 단말장치(102)는 기본데이터(개략데이터)와 상세데이터를 혼재시켜 사용하는 것도 가능하게 된다.
또한 상술한 바와 같이 송신부(1016) 및 수신부(1022)로서 이동체 통신장치를 이용하는 것도 가능하다. 이 경우, 센터국(101)과 단말장치(102)의 쌍방향 통신을 용이하게 실현할 수 있기 때문에 단말장치(102)는 제공을 희망하는 지도의 종별(개략 데이터인지 상세 데이터인지를 나타내는 정보)을 센터국(101)에 대하여 실시간으로 요구할 수 있다.
또, 송신부(1016) 및 수신부(1022)로서 지상파 디지털방송 등의 방송장치 및 이 방송을 수신하는 장치를 이용하는 것도 가능하다. 이 경우, 센터국(101)은 서로 다른 채널을 이용하여 기본데이터(개략데이터)와 상세데이터에 다른 채널을 할당함으로써 기본데이터(개략데이터)와 상세데이터의 수신시간 및 수신가능한 지도의 범위를 조절할 수 있다.
또한, 이상의 실시형태에서는 제 2 기억장치(1026)측의 지도파일(CF)의 파일헤더(FH)는 제 1 기억장치(1013)측의 지도파일(CF) 내의 그것을 그대로 이용하고 있었다. 즉, 쌍방 지도파일(CF)은 서로 같은 범위를 커버한다. 그러나, 센터국(101)과 단말장치(102)의 처리능력은 다른 경우가 많다. 예를 들면 제 2 기억장치(1026)의 기억용량은 제 1 기억장치(1013)의 그것보다도 작은 경우가 많다. 따라서, 단말장치(102)는 지도파일(CF)이 나타내는 지도의 범위보다도 좁은 범위를 커버하는 지도파일(CF)을 생성하여도 좋다. 즉, 단말장치(102)는 독자적인 범위를 커버하는 지도파일(CF)을 생성하여도 좋다.
또한, 제 2 실시형태는 단말장치(102)의 일례로서 카 네비게이션 시스템을 상정하여 설명하였다. 그러나, 퍼스널 컴퓨터 내에 지도파일(CF)의 데이터베이스를 작성하여 상기 퍼스널 컴퓨터가 지도를 표시하거나, 경로탐색을 실시하거나 하는 용도로도 본 실시형태는 적용 가능하다. 즉, 본 발명의 기술분야는 이동 가능한 단말장치에 한정되지 않고 거치형의 단말장치에도 적용할 수 있다.
또, 거치형의 단말장치에 대해서는 통신망(103)은 무선전송로일 필요성은 없으며, 유선이라도 좋다.
본 발명은 단말장치에 관하여 지도를 복수의 영역으로 분할하여 얻어지는 각 유닛이 디지털데이터화된 지도파일이 인터넷에 접속된 서버, 방송국 등으로부터 송신되어 오는 경우에 상기 지도파일을 수신하여 기억장치에 저장하는 단말장치에 적합하다.

Claims (46)

  1. 지도를 복수의 영역으로 분할하여 얻어지는 각 유닛이 디지털데이터화된 지도파일이 기억장치에 저장되어 있고, 상기 기억장치로부터 지도파일을 판독하기 위한 단말장치에 있어서,
    상기 각 지도파일은 각각의 유닛 내에 포함되는 도로망을 노드와 링크로 나타내기 위해 상기 노드마다 작성되는 노드레코드와 상기 링크마다 작성되는 링크레코드를 포함하고 있고,
    상기 각 노드레코드에는 상기 도로망 상의 교차점을 나타내는 비인접 노드에 관련하는 정보, 또는 유닛과 이 유닛에 인접하는 유닛의 도로의 접속관계를 규정하는 인접 노드에 관련하는 정보가 기록되어 있고,
    상기 인접 노드에 관련하는 정보는 상기 인접 노드의 좌표정보이며,
    상기 단말장치는
    사용자의 조작에 응답하여 지도의 범위를 지정하는 정보를 생성하는 입력장치,
    상기 입력장치에 의해 생성된 정보에 기초하여 필요한 지도파일의 기록영역을 특정하는 데이터 처리부, 및
    상기 데이터 처리부에 의해 특정된 기록영역에 기초하여 상기 기억장치로부터 지도파일을 판독하는 판독제어부를 구비하고,
    상기 데이터 처리부는
    상기 판독제어부에 의해 판독된 지도파일에 기록된 노드레코드 및 링크레코드를 이용하여 소정의 처리를 실행하고,
    한쪽 유닛 및 다른쪽 인접 유닛의 인접 노드가 갖는 좌표정보에 기초하여 상기 한쪽 유닛 내의 도로로부터 상기 다른쪽 인접 유닛 내의 도로로의 접속을 찾아가는 것을 특징으로 하는 단말장치.
  2. 제 1 항에 있어서,
    상기 링크레코드에는 상기 링크가 나타내는 도로의 속성을 나타내는 속성정보가 기록되어 있고,
    상기 데이터 처리부는 또한 한쪽 유닛 및 다른쪽 인접 유닛의 인접 노드에 접속된 링크의 속성정보에 기초하여 상기 한쪽 유닛 내의 도로로부터 상기 다른쪽 인접 유닛 내의 도로로의 접속을 찾아가는 것을 특징으로 하는 단말장치.
  3. 제 1 항에 있어서,
    상기 각 지도파일에 있어서 상기 인접 노드에 관련하는 정보를 포함하는 각 노드레코드는 연속적으로 기록되어 있는 것을 특징으로 하는 단말장치.
  4. 제 3 항에 있어서,
    상기 데이터 처리부는 다른쪽 인접 유닛을 나타내는 지도파일에 있어서 인접 노드에 관련하는 정보를 포함하는 각 노드레코드만을 검색하여, 상기 한쪽 유닛 내의 도로로부터 상기 다른쪽 인접 유닛 내의 도로로의 접속을 찾아가는 것을 특징으로 하는 단말장치.
  5. 제 1 항에 있어서,
    상기 각 지도파일에 있어서 상기 인접 노드에 관련하는 정보를 포함하는 각 노드레코드는 연속적이고, 또한 상기 인접 노드의 좌표가 오름차순 또는 내림차순이 되도록 기록되어 있는 것을 특징으로 하는 단말장치.
  6. 제 5 항에 있어서,
    상기 데이터 처리부는 다른쪽 인접 유닛을 나타내는 지도파일에 있어서 인접 노드에 관련하는 정보를 포함하는 각 노드레코드만을 검색하여, 상기 한쪽 유닛 내의 도로로부터 상기 다른쪽 인접 유닛 내의 도로로의 접속을 찾아가는 것을 특징으로 하는 단말장치.
  7. 제 1 항에 있어서,
    상기 각 지도파일에 있어서 상기 인접 노드에 관련하는 정보를 포함하는 노드레코드는 연속적이고, 또한 상기 각 인접 노드가 상기 유닛의 경계 위를 일주하는 순서로 기록되어 있는 것을 특징으로 하는 단말장치.
  8. 제 7 항에 있어서,
    상기 데이터 처리부는 다른쪽 인접 유닛을 나타내는 지도파일에 있어서 한쪽유닛과의 경계 위에 위치하는 인접 노드에 관련하는 정보를 포함하는 각 노드레코드만을 상기 각 노드레코드의 기록순서와 역방향으로 검색하여, 상기 한쪽 유닛 내의 도로로부터 상기 다른쪽 인접 유닛 내의 도로로의 접속을 찾아가는 것을 특징으로 하는 단말장치.
  9. 제 3 항에 있어서,
    상기 각 유닛은 지도를 다각형상의 영역으로 분할하고 있고,
    상기 각 지도파일에 있어서 상기 유닛의 각 변에 위치하는 인접 노드에 관련하는 정보를 포함하는 각 노드레코드는 연속적으로 기록되어 있는 것을 특징으로 하는 단말장치.
  10. 제 9 항에 있어서,
    상기 데이터 처리부는 다른쪽 인접 유닛을 나타내는 지도파일에 있어서 상기 인접 유닛의 소정의 한변 위에 위치하는 인접 노드에 관련하는 정보를 포함하는 각 노드레코드만을 검색하여, 상기 한쪽 유닛 내의 도로로부터 상기 다른쪽 인접 유닛 내의 도로로의 접속을 찾아가고,
    상기 인접 유닛의 소정의 한변은 상기 한쪽 유닛 내의 인접 노드가 속하는 변과 접하는 것을 특징으로 하는 단말장치.
  11. 제 9 항에 있어서,
    상기 유닛의 각 변에 위치하는 인접 노드에 관련하는 정보를 포함하는 각 노드레코드는 상기 각 인접 노드의 좌표정보가 오름차순 또는 내림차순으로 기록되어 있는 것을 특징으로 하는 단말장치.
  12. 제 11 항에 있어서,
    상기 데이터 처리부는 다른쪽 인접 유닛을 나타내는 지도파일에 있어서 상기 인접 유닛의 소정의 한변 위에 위치하는 인접 노드에 관련하는 정보를 포함하는 각 노드레코드만을 상기 각 노드레코드의 기록순서에 따라서 검색하여, 상기 한쪽 유닛 내의 도로로부터 상기 다른쪽 인접 유닛 내의 도로로의 접속을 찾아가고,
    상기 인접 유닛의 소정의 한변은 상기 한쪽 유닛 내의 인접 노드가 속하는 변과 접하는 것을 특징으로 하는 단말장치.
  13. 지도를 복수의 영역으로 분할하여 얻어지는 각 유닛이 디지털데이터화된 지도파일이 기억장치에 저장되어 있고, 상기 기억장치로부터 지도파일을 판독하기 위한 단말장치에 있어서,
    상기 각 지도파일은 그 자신이 나타내는 지도의 범위를 일의적으로 대응하는 파일명이 붙여져 상기 기억장치에 저장되어 있고,
    상기 단말장치는
    사용자의 조작에 응답하여 지도의 범위를 지정하는 정보를 생성하는 입력장치,
    상기 입력장치에 의해 생성된 정보에 기초하여 필요한 지도파일의 기록영역을 특정하는 데이터 처리부,
    상기 데이터 처리부에 의해 특정된 기록영역에 기초하여 상기 기억장치로부터 지도파일을 판독하는 판독제어부를 구비하는 것을 특징으로 하는 단말장치.
  14. 제 13 항에 있어서,
    상기 각 지도파일은 각각의 유닛 내에 포함되는 도로망을 노드와 링크를 나타내기 위해 상기 노드마다 작성되는 노드레코드와 상기 링크마다 작성되는 링크레코드를 포함하고 있고,
    상기 데이터 처리부는
    상기 판독제어부에 의해 금회 판독된 지도파일에 기록된 노드레코드 및 링크레코드를 이용하여 경로를 탐색하는 처리를 실행하고,
    금회 판독된 지도파일이 나타내는 범위에 있어서 경로의 탐색이 종료하면, 다시 경로의 탐색에 필요한 지도의 범위를 산출하여 산출한 지도의 범위에 기초하여 다음에 판독해야 하는 지도파일의 기록영역을 특정하는 것을 특징으로 하는 단말장치.
  15. 지도를 복수의 영역으로 분할하여 얻어지는 각 유닛이 디지털데이터화된 지도파일이 기억장치에 저장되어 있고, 상기 기억장치로부터 지도파일을 판독하기 위한 단말장치에 있어서,
    상기 각 유닛 내에 포함되는 각 배경은 한번에 쓰기 가능한 오브젝트 단위로 분할되고, 상기 복수의 오브젝트는 서로 동일 속성을 갖는 것마다 그룹화되고,
    상기 지도파일은 상기 각 그룹마다 오브젝트에 관련하는 정보가 기록되는 배경레코드를 포함하고 있고,
    상기 단말장치는
    사용자의 조작에 응답하여 지도의 범위를 지정하는 정보를 생성하는 입력장치,
    상기 입력장치에 의해 생성된 정보에 기초하여 필요한 지도파일의 기록영역을 특정하는 데이터 처리부,
    상기 데이터 처리부에 의해 특정된 기록영역에 기초하여 상기 기억장치로부터 지도파일을 판독하는 판독제어부, 및
    출력장치를 구비하고,
    상기 데이터 처리부는 상기 판독제어부에 의해 판독된 지도파일에 포함되는 배경레코드에 기초하여 상기 출력장치 상에 배경을 표시시키는 것을 특징으로 하는 단말장치.
  16. 제 15 항에 있어서,
    상기 각 오브젝트는 형상을 나타내기 위한 요소점으로 이루어져 있고,
    상기 각 배경레코드에는 상기 각 오브젝트의 요소점의 좌표값이 한번에 쓰여지는 순서로 기록되어 있고,
    상기 요소점의 좌표값은 상기 유닛에서 원점을 기준으로 한 절대좌표값 및 다른 요소점의 좌표값을 기준으로 한 상대좌표값 중 어느 하나로 표현되는 것을 특징으로 하는 단말장치.
  17. 제 15 항에 있어서,
    상기 각 오브젝트에 있어서 펜다운 위치가 되는 요소점은 소정의 조건을 만족하는 경우에는 상대좌표값으로 표현되는 것을 특징으로 하는 단말장치.
  18. 제 17 항에 있어서,
    상기 소정의 조건은 직전의 펜업 위치로부터 펜다운 위치까지의 거리가 소정값 이하인 것을 특징으로 하는 단말장치.
  19. 제 17 항에 있어서,
    상기 소정의 조건은 펜다운 위치가 되는 요소점의 상대좌표값이 미리 정해진 비트수 이하로 표현되는 것을 특징으로 하는 단말장치.
  20. 제 15 항에 있어서,
    상기 각 오브젝트의 요소점은 소정의 조건을 만족하는 경우에는 직접 좌표값으로 표현되는 것을 특징으로 하는 단말장치.
  21. 제 19 항에 있어서,
    상기 소정의 조건은 요소점으로부터 그 직전의 요소점까지의 거리가 소정값이상인 것을 특징으로 하는 단말장치.
  22. 제 19 항에 있어서,
    상기 소정의 조건은 요소점의 좌표값을 상대좌표값으로 표현한 경우에 미리 정해진 비트수를 초과하는 것을 특징으로 하는 단말장치.
  23. 컴퓨터장치에 의한 처리를 위해서 미리 정해진 데이터구조를 갖고 있고, 지도를 복수의 영역으로 분할하여 얻어지는 각 유닛이 디지털데이터화된 지도파일이 기록된 기록매체에 있어서,
    상기 각 지도파일의 유닛 내에 포함되는 도로망을 구성하는 노드마다 작성되는 노드레코드와,
    상기 각 지도파일의 유닛 내에 포함되는 도로망을 구성하는 링크마다 작성되는 링크레코드를 포함하고,
    상기 각 노드레코드에는 상기 도로망 상의 교차점을 나타내는 비인접 노드에 관련하는 정보, 또는 유닛과 이 유닛에 인접하는 유닛의 도로의 접속관계를 규정하는 인접 노드의 좌표를 나타내는 좌표정보가 기록되고,
    상기 컴퓨터장치가
    사용자의 조작에 응답하여 지도의 범위를 지정하는 범위정보를 생성하고,
    생성된 범위정보에 기초하여 필요한 지도파일의 기록영역을 특정하고,
    특정된 기록영역에 기초하여 지도파일을 판독하고, 또한
    판독된 지도파일에 기록된 노드레코드 및 링크레코드를 이용하여 경로를 탐색하는 처리를 실행하는 중에 한쪽 유닛 및 다른쪽 인접 유닛의 인접 노드의 좌표정보에 기초하여 상기 한쪽 유닛 내의 도로로부터 상기 다른쪽 인접 유닛 내의 도로로의 접속을 찾아가는 처리를 실현 가능하게 하는 것을 특징으로 하는 지도파일이 기록된 기록매체.
  24. 제 23 항에 있어서,
    상기 링크레코드에는 상기 링크가 나타내는 도로의 속성을 나타내는 속성정보가 기록되어 있고,
    상기 컴퓨터장치는 또한
    상기 경로를 탐색하는 처리의 실행 중에 한쪽 유닛 및 다른쪽 인접 유닛의 인접 노드에 접속된 링크의 속성정보에 기초하여 상기 한쪽 유닛 내의 도로로부터 상기 다른쪽 인접 유닛 내의 도로로의 접속을 찾아가는 것을 특징으로 하는 지도파일이 기록된 기록매체.
  25. 제 23 항에 있어서,
    상기 인접 노드에 관련하는 정보를 포함하는 각 노드레코드는 연속적으로 기록되어 있는 것을 특징으로 하는 지도파일이 기록된 기록매체.
  26. 제 23 항에 있어서,
    상기 인접 노드에 관련하는 정보를 포함하는 각 노드레코드는 연속적이고, 또한 상기 인접 노드의 좌표가 오름차순 또는 내림차순이 되도록 기록되어 있는 것을 특징으로 하는 지도파일이 기록된 기록매체.
  27. 제 23 항에 있어서,
    상기 인접 노드에 관련하는 정보를 포함하는 각 노드레코드는 연속적이고, 또한 상기 각 인접 노드가 상기 유닛의 경계 위를 일주하는 순서로 기록되어 있는 것을 특징으로 하는 지도파일이 기록된 기록매체.
  28. 컴퓨터장치에 의한 처리를 위해서 미리 정해진 데이터가 기록된 기록매체에 로서,
    구조를 갖고 있고, 지도를 복수의 영역으로 분할하여 얻어지는 각 유닛이 디지털데이터화된 지도파일이 기록된 기록매체에 있어서,
    지도를 복수의 영역으로 분할하여 얻어지는 각 유닛이 디지털데이터화된 지도파일과,
    상기 각 지도파일의 이름을 트리구조로 표현하여 상기 각 지도파일의 기록영역을 관리하는 관리정보를 포함하고,
    상기 컴퓨터장치가
    외부로부터 지도의 범위를 지정하는 범위정보가 입력되면, 입력된 범위정보에 기초하여 필요한 지도파일의 이름을 특정하고, 또한
    상기 관리정보를 참조하여 특정된 지도파일의 이름에 일의적으로 대응하는 기록영역으로부터 지도파일을 판독하는 처리를 실현 가능하게 하는 것을 특징으로 하는 지도파일이 기록된 기록매체.
  29. 컴퓨터장치에 의한 처리를 위해서 미리 정해진 데이터구조를 갖고 있고, 지도를 복수의 영역으로 분할하여 얻어지는 각 유닛이 디지털데이터화된 지도파일이 기록된 기록매체에 있어서,
    상기 각 유닛 내에 포함되는 각 배경은 한번에 쓰기 가능한 오브젝트 단위로 분할되어 있고,
    상기 기록매체는
    각 배경의 속성을 나타내는 정보와,
    각 오브젝트를 묘화하기 위해서 필요한 정보가 기록되는 오브젝트레코드를 포함하고,
    상기 배경의 속성을 나타내는 정보와 상기 속성을 갖는 오브젝트의 오브젝트레코드가 연속하여 기록되고, 이에 의해 복수의 오브젝트는 서로 동일한 속성을 갖는 것마다 그룹화되고,
    상기 컴퓨터장치가 상기 각 지도파일에 포함되는 각 배경의 속성정보와 오브젝트레코드에 기초하여 지도를 묘화하는 처리를 실현 가능하게 하는 것을 특징으로 하는 지도파일이 기록된 기록매체.
  30. 제 29 항에 있어서,
    상기 각 오브젝트는 그 자신의 형상을 나타내기 위한 요소점으로 이루어져 있고,
    상기 각 오브젝트레코드에는 상기 각 오브젝트의 요소점의 좌표값이 한번에 쓰여지는 순서로 기록되어 있고,
    상기 요소점의 좌표값은 상기 유닛에서 원점을 기준으로 한 절대좌표값 및 다른 요소점의 좌표값을 기준으로 한 상대좌표값 중 어느 하나로 표현되는 것을 특징으로 하는 지도파일이 기록된 기록매체.
  31. 제 29 항에 있어서,
    상기 각 오브젝트에 있어서 펜다운 위치가 되는 요소점은 소정의 조건을 만족하는 경우에는 상대좌표값으로 표현되는 것을 특징으로 하는 지도파일이 기록된 기록매체.
  32. 제 29 항에 있어서,
    상기 각 오브젝트의 요소점은 소정의 조건을 만족하는 경우에는 직접 좌표값으로 표현되는 것을 특징으로 하는 지도파일이 기록된 기록매체.
  33. 서로 축척이 다른 복수의 지도를 각각 복수의 영역으로 분할하여 얻어지는 각 유닛이 디지털데이터화된 지도파일이 기억장치에 저장되어 있고, 상기 기억장치로부터 지도파일을 판독하기 위한 단말장치에 있어서,
    복수의 상기 지도파일은 상기 축척에 따라서 계층적인 구조를 갖고 있고, 각각의 유닛 내에 포함되는 도로망을 노드와 링크로 나타내기 위해 상기 노드마다 작성되고, 또한 상기 노드의 좌표정보가 기록되는 노드레코드와 상기 링크마다 작성되는 링크레코드를 적어도 포함하고 있고,
    상기 각 지도파일에는 노드의 좌표정보가 오름차순 또는 내림차순이 되도록 노드레코드가 기록되어 있고,
    상기 단말장치는
    지도의 범위를 지정하는 정보를 생성하는 입력장치,
    상기 입력장치에 의해 생성된 정보에 기초하여 필요한 지도파일의 기록영역을 특정하는 데이터 처리부, 및
    상기 데이터 처리부에 의해 특정된 기록영역에 기초하여 상기 기억장치로부터 지도파일을 판독하는 판독제어부를 구비하고,
    상기 데이터 처리부는
    상기 판독제어부에 의해 판독된 지도파일에 기록된 좌표정보에 기초하여 하위계층의 유닛에 포함되는 노드에 대응하는 상위계층의 유닛의 노드를 검색하는 것을 특징으로 하는 단말장치.
  34. 제 33 항에 있어서,
    데이터 처리부는 또한 상기 각 노드레코드의 기록순서에 기초하여 하위계층의 유닛에 포함되는 노드에 대응하는 상위계층의 유닛의 노드를 검색하는 것을 특징으로 하는 단말장치.
  35. 센터국이 단말장치에 전송로를 통하여 지도파일을 제공하는 시스템에 있어서,
    상기 센터국은
    미리 정해진 범위의 지도를 나타내는 지도파일을 기억하는 제 1 기억장치,
    상기 제 1 기억장치로부터 지도파일의 일부 또는 전부를 지도데이터로서 판독하는 판독제어부,
    상기 판독제어부에 의해 판독된 지도데이터를 이용하여 상기 전송로에 대해 적절한 형식의 패킷을 조립하는 패킷조립부, 및
    상기 패킷조립부에 의해 조립된 패킷을 상기 전송로를 통하여 상기 단말장치로 송신하는 송신부를 구비하고,
    상기 단말장치는
    상기 전송로를 통하여 상기 송신부에 의해 송신된 패킷을 수신하는 수신부,
    상기 수신부에 의해 수신된 패킷을 분해하여 지도데이터를 복원하는 처리를 실행하는 데이터 처리부, 및
    그 내부의 기억매체에 지도파일을 기억하는 제 2 기억장치를 구비하고,
    상기 데이터 처리부는
    금회 복원한 지도데이터에 관련하는 지도파일이 상기 제 2 기억장치에 이미 저장되어 있는 경우에는 상기 제 2 기억장치로부터 상기 지도파일을 판독하고, 또한 복원한 지도데이터를 판독된 제 2 지도파일에 추가하여 상기 제 2 기억장치에 저장하는 처리를 실행하는 것을 특징으로 하는 지도제공 시스템.
  36. 제 35 항에 있어서,
    상기 데이터 처리부는 필요에 따라서 지도파일을 복수개 작성하는 것을 특징으로 하는 지도제공 시스템.
  37. 제 35 항에 있어서,
    상기 지도파일은 상기 미리 정해진 범위의 지도가 복수의 영역으로 구획된 복수의 유닛과 상기 각 유닛을 관리하기 위한 관리정보로 구성되어 있고,
    상기 센터국에 있어서
    상기 판독제어부는 상기 제 1 기억장치에 저장된 지도파일로부터 유닛단위의 판독을 실행하고,
    상기 패킷조립부는 상기 판독제어부가 판독한 유닛, 지도파일을 특정하는 파일ID, 상기 유닛을 특정하는 유닛ID 및 상기 유닛의 데이터사이즈를 이용하여 패킷을 조립하는 것을 특징으로 하는 지도제공 시스템.
  38. 제 37 항에 있어서,
    상기 데이터 처리부는 또한
    상기 수신부에 의해 수신된 패킷으로부터 파일ID, 유닛ID 및 데이터사이즈를 추출하고,
    추출된 파일ID, 유닛ID 및 데이터사이즈를 이용하여 상기 수신부에 의해 수신된 패킷을 분해하여 지도데이터를 복원하는 것을 특징으로 하는 지도제공 시스템.
  39. 제 35 항에 있어서,
    상기 지도파일은 또한 상기 미리 정해진 범위를 개략적으로 나타내는 기본데이터와 상기 범위를 상세하게 나타내는 상세데이터를 포함하고,
    상기 기본데이터와 상기 상세데이터는 서로 분리 가능한 데이터구조를 갖는 것을 특징으로 하는 지도제공 시스템.
  40. 제 39 항에 있어서,
    상기 기본데이터는 또한 상기 지도의 배경을 나타내는 기본배경데이터, 상기 지도에 나타내야 하는 문자 및 기호를 개략적으로 나타내는 기본문자기호 데이터 및 상기 지도 내에 존재하는 주요간선 도로 네트워크를 나타내는 주요간선 네트워크데이터를 포함하고,
    상기 상세데이터는 또한 상기 지도의 상세한 배경을 나타내는 상세배경데이터, 상기 지도에 표시해야 하는 문자 및 기호를 상세하게 나타내는 상세문자기호 데이터 및 상기 지도 내에 존재하는 세가로(細街路)의 도로 네트워크를 나타내는 세가로 네트워크데이터를 포함하고,
    상기 상세배경데이터, 상기 상세문자기호 데이터 및 세가로 네트워크데이터는 상기 기본배경 데이터, 기본문자기호 데이터 및 주요간선 네트워크데이터의 차분데이터로서 구성되어 있고, 상기 기본데이터와 상기 상세데이터가 조합됨으로써 상대적으로 상세한 지도를 나타낼 수 있는 것을 특징으로 하는 지도제공 시스템.
  41. 제 39 항에 있어서,
    상기 판독제어부는 또한 상기 제 1 기억장치에 저장된 지도파일에 포함되는 기본데이터만을 지도데이터로서 판독하는 것을 특징으로 하는 지도제공 시스템.
  42. 제 41 항에 있어서,
    상기 판독제어부는 또한 상기 기억장치에 저장된 지도파일에 포함되는 상세데이터만을 지도데이터로서 판독하는 것을 특징으로 하는 지도제공 시스템.
  43. 제 39 항에 있어서,
    상기 판독제어부는 또한 상기 제 1 기억장치에 저장된 지도파일에 포함되는 기본데이터 및 상세데이터를 지도데이터로서 판독하는 것을 특징으로 하는 지도제공 시스템.
  44. 제 41 항에 있어서,
    상기 데이터 처리부는 또한 상기 수신부에 의해 수신된 패킷을 분해하여 기본데이터를 복원하는 것을 특징으로 하는 지도제공 시스템.
  45. 제 44 항에 있어서,
    상기 센터국의 상기 판독제어부는 또한 상기 제 1 기억장치에 저장된 지도파일에 포함되는 상세데이터만을 지도데이터로서 판독하고,
    상기 이동국의 상기 데이터 처리부는 또한 상기 수신부에 의해 수신된 패킷을 조립하여 상세데이터를 복원하는 것을 특징으로 하는 지도제공 시스템.
  46. 제 43 항에 있어서,
    상기 데이터 처리부는 또한 상기 수신부에 의해 수신된 패킷을 분해하여 기본데이터 및 상세데이터를 복원하는 것을 특징으로 하는 지도제공 시스템.
KR10-2001-7006452A 1998-11-24 1999-11-24 디지털 지도파일의 데이터구조 KR100443495B1 (ko)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP10-332412 1998-11-24
JP33241298 1998-11-24
JP16594099 1999-06-11
JP11-165940 1999-06-11

Publications (2)

Publication Number Publication Date
KR20010087397A KR20010087397A (ko) 2001-09-15
KR100443495B1 true KR100443495B1 (ko) 2004-08-09

Family

ID=26490493

Family Applications (1)

Application Number Title Priority Date Filing Date
KR10-2001-7006452A KR100443495B1 (ko) 1998-11-24 1999-11-24 디지털 지도파일의 데이터구조

Country Status (4)

Country Link
US (1) US6636802B1 (ko)
EP (1) EP1134674A4 (ko)
KR (1) KR100443495B1 (ko)
WO (1) WO2000031663A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101046410B1 (ko) 2008-10-17 2011-07-05 현대엠엔소프트 주식회사 인접 도엽과의 참조값을 유지하는 부분 업데이트 방법 및 그를 위한 시스템

Families Citing this family (87)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3990075B2 (ja) * 1999-06-30 2007-10-10 株式会社東芝 音声認識支援方法及び音声認識システム
JP4080680B2 (ja) * 2000-07-13 2008-04-23 パイオニア株式会社 携帯情報端末機および携帯情報端末機による施設内画像情報提供システム
US6912462B2 (en) 2000-08-31 2005-06-28 Sony Corporation Information processing apparatus, information processing method and program storage media
US6703947B1 (en) 2000-09-22 2004-03-09 Tierravision, Inc. Method for organizing and compressing spatial data
US7689621B1 (en) * 2000-11-06 2010-03-30 Navteq North America, Llc Multi-dimensional spatial index for a geographic database
US8924506B2 (en) 2000-12-27 2014-12-30 Bradium Technologies Llc Optimized image delivery over limited bandwidth communication channels
ATE495423T1 (de) * 2001-11-02 2011-01-15 Panasonic Corp Endgerätevorrichtung
US7246102B2 (en) * 2001-12-21 2007-07-17 Agere Systems Inc. Method of improving the lookup performance of three-type knowledge base searches
KR20030055918A (ko) * 2001-12-27 2003-07-04 (주) 만도맵앤소프트 무선망을 통한 단말기의 전자지도 온라인 업데이트 방법
KR100506220B1 (ko) * 2002-02-27 2005-08-05 삼성전자주식회사 네비게이션 서비스를 위한 단일 경로 혹은 다중경로에서의 맵 매칭 장치 및 방법
KR20040111446A (ko) * 2002-03-29 2004-12-31 마쯔시다덴기산교 가부시키가이샤 지도 매칭 방법, 지도 매칭 장치, 형상 매칭용데이터베이스 및 형상 매칭 장치
JP4094335B2 (ja) 2002-04-26 2008-06-04 松下電器産業株式会社 地図編集表示装置、地図管理システム、地図管理方法および地図記憶媒体
KR100560735B1 (ko) * 2002-05-06 2006-03-14 이승철 식별코드를 이용한 맵정보 검색 방법
DE10221774A1 (de) * 2002-05-15 2003-11-27 Bosch Gmbh Robert Verfahren zum Komprimieren und Dekomprimieren von Daten eines Datenstromes
EP1507246B1 (en) * 2002-05-17 2018-07-18 Clarion Co., Ltd. Map data product, map data processing program product, map data processing method, and map data processing device
JP2004020220A (ja) * 2002-06-12 2004-01-22 Pioneer Electronic Corp 通信システム及び方法、通信端末装置、通信センタ装置、並びにコンピュータプログラム
JP2004037269A (ja) * 2002-07-03 2004-02-05 Communication Research Laboratory 自立移動支援システム、その方法および記録媒体
US7082443B1 (en) 2002-07-23 2006-07-25 Navteq North America, Llc Method and system for updating geographic databases
KR100494892B1 (ko) * 2002-09-05 2005-06-13 현대자동차주식회사 차량의 통신 네비게이션용 맵 데이터 전송 방법 및 장치
JP4162959B2 (ja) * 2002-09-27 2008-10-08 株式会社ザナヴィ・インフォマティクス 地図データ処理装置
JP2004126036A (ja) 2002-09-30 2004-04-22 Xanavi Informatics Corp 配信地図データ構造、配信地図データ作成方法、配信地図データ作成装置、および端末装置
US7680833B1 (en) * 2002-11-22 2010-03-16 Bmc Software, Inc. System and method for database structure comparison
KR100493092B1 (ko) * 2003-02-08 2005-06-02 삼성전자주식회사 네비게이션장치 및 네비게이션장치의 최적경로 계산방법
FI20040941A (fi) 2003-07-07 2005-01-08 Hannu Pirilae Geneerinen palvelupyyntömenettely monimuotojärjestelmässä
US7079946B2 (en) * 2003-08-29 2006-07-18 Denso Corporation Iterative logical renewal of navigable map database
CN100334429C (zh) * 2004-05-08 2007-08-29 曲声波 电子地图数据存储与更新的方法
US7546299B2 (en) * 2004-05-12 2009-06-09 Alcatel-Lucent Usa Inc. Network supported network file sharing among mobile subscribers
US8160998B2 (en) 2004-06-04 2012-04-17 Vitalsource Technologies, Inc. System, method and computer program product for providing content based upon a representation of the same
US7418145B2 (en) 2004-06-30 2008-08-26 Matsushita Electric Industrial Co., Ltd. Compression device and decompression device
US20060058953A1 (en) 2004-09-07 2006-03-16 Cooper Clive W System and method of wireless downloads of map and geographic based data to portable computing devices
US7403851B2 (en) * 2004-09-30 2008-07-22 Navteq North America, Llc Method of operating a navigation system to report effects of updated portions of a geographic database
JP2006171106A (ja) * 2004-12-13 2006-06-29 Aisin Aw Co Ltd 地図データ更新方法、地図データ更新システム、サーバ及び中継装置
KR100713465B1 (ko) * 2005-01-25 2007-05-02 삼성전자주식회사 네비게이션 시스템에서 경로 계산 방법
KR100516970B1 (ko) * 2005-03-29 2005-09-26 포인트아이 주식회사 MS-Based GPS 방식을 이용하여 길 안내 서비스를제공하는 방법 및 이를 이용한 시스템 및 장치
JP4839765B2 (ja) * 2005-10-04 2011-12-21 株式会社デンソー 電子機器、路線地図データ更新システム、及び、路線地図データ管理装置
US8098899B2 (en) * 2005-11-14 2012-01-17 Fujifilm Corporation Landmark search system for digital camera, map data, and method of sorting image data
JP4812415B2 (ja) * 2005-11-30 2011-11-09 富士通株式会社 地図情報更新システム、中央装置、地図情報更新方法、及びコンピュータプログラム
US7606579B2 (en) * 2005-12-01 2009-10-20 Discrete Wireless, Inc. Auto mapping through location based triggers
KR100753287B1 (ko) * 2005-12-05 2007-08-29 엘지전자 주식회사 지도 데이터베이스의 생성방법 및 이를 이용한 교통정보의표시방법
JP4702108B2 (ja) * 2006-03-03 2011-06-15 株式会社デンソー 地図表示装置の地図データの更新方法および地図表示装置
DE102006018879A1 (de) * 2006-04-24 2007-10-31 Siemens Ag Verfahren und Vorrichtung zum Ermitteln von Mindestkosten von einem Startort zu einem Zielort für die Planung einer Route
DE102006018877A1 (de) * 2006-04-24 2007-10-31 Siemens Ag Verfahren und Vorrichtung zum Ermitteln von Mindestkosten von einem Startort zu einem Zielort
DE102006018880A1 (de) * 2006-04-24 2007-10-31 Siemens Ag Verfahren zum Ermitteln von Mindestkosten
JP5013738B2 (ja) * 2006-04-25 2012-08-29 アルパイン株式会社 地図データ作成装置
JP4613898B2 (ja) * 2006-08-23 2011-01-19 株式会社デンソー 情報システム、端末装置及び情報センタ装置
US20080051994A1 (en) * 2006-08-28 2008-02-28 Microsoft Corporation Representation and display of geographical popularity data
WO2008050377A1 (fr) * 2006-09-29 2008-05-02 Fujitsu Limited Système de support de modèle, procédé et programme
CN104765826B (zh) * 2006-09-29 2019-01-04 优步技术公司 动态配置的数字地图绘制
JP4809900B2 (ja) * 2006-11-17 2011-11-09 パイオニア株式会社 ナビゲーション装置、地図表示方法及び地図表示プログラム
US8355864B2 (en) * 2007-03-27 2013-01-15 Nec Corporation Map matching system, map matching method and program
JP5075443B2 (ja) * 2007-03-27 2012-11-21 アイシン・エィ・ダブリュ株式会社 道路地図データ生成装置、ナビゲーション装置、及び道路地図データ生成プログラム
JP4466683B2 (ja) * 2007-05-31 2010-05-26 アイシン・エィ・ダブリュ株式会社 地図更新システム及び地図更新方法
US7447588B1 (en) * 2007-07-16 2008-11-04 Wenshine Technology Ltd. Method and system for partitioning a continental roadway network for an intelligent vehicle highway system
US8521430B2 (en) 2007-12-28 2013-08-27 Navteq B.V. Managing differences between geographic database versions
US20110004640A1 (en) * 2008-02-27 2011-01-06 Mototsugu Noguchi Map drawing device
TWI374255B (en) * 2008-07-24 2012-10-11 Htc Corp Method and system for synchronizing mark on electronic map and computer program product using the same
JP5057246B2 (ja) * 2008-10-16 2012-10-24 アイシン・エィ・ダブリュ株式会社 ナビゲーション装置およびプログラム
WO2010083217A1 (en) * 2009-01-13 2010-07-22 Ensoco, Inc. Method and computer program product for geophysical and geologic data identification, geodetic classification, and organization
CN101608925B (zh) * 2009-07-10 2013-07-10 北京四维图新科技股份有限公司 导航电子地图地理要素信息的反馈方法、终端及服务器
EP2462411B1 (en) * 2009-08-03 2015-07-29 TomTom North America Inc. Method of verifying attribute information of a digital transport network database using interpolation and probe traces
WO2011052473A1 (ja) * 2009-10-30 2011-05-05 株式会社エヌ・ティ・ティ・ドコモ 管理サーバ、人口情報算出管理サーバ、不在エリア管理方法および人口情報算出方法
JP5066206B2 (ja) * 2010-03-11 2012-11-07 日立オートモティブシステムズ株式会社 リンク列変換方法、道路情報提供装置および道路情報提供システム
JP5218534B2 (ja) 2010-12-06 2013-06-26 株式会社Jvcケンウッド 地図表示装置、地図表示方法及び地図表示プログラム
JP5402957B2 (ja) 2011-02-09 2014-01-29 株式会社デンソー 電子機器
JP2013003049A (ja) * 2011-06-20 2013-01-07 Sony Corp 経路比較装置、経路比較方法、及びプログラム
AU2015203030B2 (en) * 2011-08-26 2016-10-20 Crown Equipment Corporation Method and apparatus for using unique landmarks to locate industrial vehicles at start-up
US20130054129A1 (en) * 2011-08-26 2013-02-28 INRO Technologies Limited Method and apparatus for using unique landmarks to locate industrial vehicles at start-up
US20140058634A1 (en) 2012-08-24 2014-02-27 Crown Equipment Limited Method and apparatus for using unique landmarks to locate industrial vehicles at start-up
US8775059B2 (en) * 2011-10-26 2014-07-08 Right There Ware LLC Method and system for fleet navigation, dispatching and multi-vehicle, multi-destination routing
JP6129482B2 (ja) 2012-04-11 2017-05-17 古野電気株式会社 電子地図表示装置、及び電子地図に関する情報の表示方法
CN103471603B (zh) * 2012-06-06 2015-10-21 腾讯科技(深圳)有限公司 一种公交线路与道路网络的匹配方法和装置
EP2757504B1 (en) * 2013-01-17 2022-06-01 Google LLC Route planning
JP5860836B2 (ja) * 2013-05-10 2016-02-16 アイシン・エィ・ダブリュ株式会社 地図データ記憶装置、地図データ更新方法及びコンピュータプログラム
CN103942331B (zh) * 2014-04-30 2017-06-09 中南大学 一种土地利用矢量数据库增量更新处理的自动化方法
CN103955534B (zh) * 2014-05-13 2017-08-04 百度在线网络技术(北京)有限公司 地图查询方法及装置
CN105701555A (zh) * 2014-11-28 2016-06-22 国际商业机器公司 用于划分路网的方法和***
US9880011B2 (en) * 2015-07-31 2018-01-30 International Business Machines Corporation Simplification of trajectory representation
US9863774B2 (en) * 2016-05-06 2018-01-09 Here Global B.V. Stitching mixed-version map tiles in hybrid navigation for partial map updates
US10378909B2 (en) 2016-05-06 2019-08-13 Here Global B.V. Stitching mixed-version map tiles in hybrid navigation for partial map updates
CN108664485A (zh) * 2017-03-28 2018-10-16 深圳市凯立德科技股份有限公司 一种数据检查的方法及装置
DE102020113975A1 (de) 2020-05-25 2021-11-25 Bayerische Motoren Werke Aktiengesellschaft Aktualisierung von Kartendaten
CN112085814B (zh) * 2020-09-07 2024-05-14 北京百度网讯科技有限公司 电子地图显示方法、装置、设备及可读存储介质
CN112800156B (zh) * 2021-01-06 2023-10-13 迪爱斯信息技术股份有限公司 一种基于路侧单元地图分幅方法、***、设备和存储介质
CN113625264A (zh) * 2021-06-16 2021-11-09 中国铁道科学研究院集团有限公司铁道建筑研究所 一种并行处理铁路检测大数据的方法及***
US11740788B2 (en) 2022-01-18 2023-08-29 Craxel, Inc. Composite operations using multiple hierarchical data spaces
US11880608B2 (en) * 2022-01-18 2024-01-23 Craxel, Inc. Organizing information using hierarchical data spaces
US20230280179A1 (en) * 2022-03-07 2023-09-07 Telenav, Inc. Navigation system with address index mechanism and method of operation thereof

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR19980024791A (ko) * 1996-09-13 1998-07-06 가나이 쯔도무 표시 장치에 특정 위치를 그 주변 지도와 함께 표시하는 정보표시 시스템

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0640344B2 (ja) 1985-03-01 1994-05-25 株式会社日立製作所 図形の編集方法
US4847788A (en) 1985-03-01 1989-07-11 Hitachi, Ltd. Graphic data processing method and system
US4924402A (en) * 1986-07-02 1990-05-08 Pioneer Electronic Corporation Method for identifying current position of vehicle
JPS6386074A (ja) 1986-09-30 1988-04-16 Hitachi Ltd 図面フアイルの管理方式
NL8702014A (nl) * 1987-08-28 1989-03-16 Philips Nv Routebepalingseenheid.
US5150295A (en) * 1990-05-22 1992-09-22 Teledyne Industries, Inc. Computerized system for joining individual maps into a single map product
EP0479364B1 (en) * 1990-10-01 1999-05-26 Mannesmann VDO Aktiengesellschaft Method of storing a topological network, and methods and apparatus for identifying series of 1-cells in a network stored by such a method
JP3144850B2 (ja) 1990-10-01 2001-03-12 マネスマン ファウデーオー アクチェンゲゼルシャフト 位相網記憶方法とそのような網の1セルを識別する方法及び装置
JPH0511692A (ja) 1991-07-03 1993-01-22 Alpine Electron Inc 地図検索方法
JPH07103775A (ja) 1993-10-04 1995-04-18 Matsushita Electric Ind Co Ltd 経路探索表示装置
JP3082820B2 (ja) 1993-11-25 2000-08-28 ソニー株式会社 受信装置およびデジタルデータ受信処理方法
JP3016410B2 (ja) 1993-12-10 2000-03-06 株式会社富士通ゼネラル 指令地図伝送システム
JPH07262493A (ja) 1994-03-16 1995-10-13 Csk Corp 移動体用地図情報配布システム
US5445524A (en) * 1994-05-03 1995-08-29 Jones; John A. Geographic location identification system
JP3173983B2 (ja) * 1995-12-28 2001-06-04 松下電器産業株式会社 経路選出方法およびシステム
JP3399779B2 (ja) 1996-05-16 2003-04-21 松下電器産業株式会社 道路地図情報の読み出し装置および記録媒体並びに伝送方法
DE69732546T2 (de) 1996-05-16 2006-01-12 Matsushita Electric Industrial Co., Ltd., Kadoma Strassenkarteninformationswiedergabevorrichtung, Aufzeichnungsmedium und Übertragungsverfahren
JP3446930B2 (ja) * 1996-09-30 2003-09-16 松下電器産業株式会社 経路選出方法および経路選出装置
JPH10162068A (ja) 1996-11-29 1998-06-19 Tokyo Gas Co Ltd ネットワーク追跡装置、ネットワーク追跡方法および記録媒体
JP3897134B2 (ja) 1997-03-11 2007-03-22 ソニー株式会社 画像表示装置および方法
JP3372021B2 (ja) 1997-05-01 2003-01-27 松下電器産業株式会社 地図情報提供システム
EP1241447A1 (en) * 2001-03-13 2002-09-18 Matsushita Electric Industrial Co., Ltd. Information terminal and cartographic information providing system

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR19980024791A (ko) * 1996-09-13 1998-07-06 가나이 쯔도무 표시 장치에 특정 위치를 그 주변 지도와 함께 표시하는 정보표시 시스템

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101046410B1 (ko) 2008-10-17 2011-07-05 현대엠엔소프트 주식회사 인접 도엽과의 참조값을 유지하는 부분 업데이트 방법 및 그를 위한 시스템

Also Published As

Publication number Publication date
US6636802B1 (en) 2003-10-21
EP1134674A4 (en) 2010-06-09
KR20010087397A (ko) 2001-09-15
WO2000031663A1 (fr) 2000-06-02
EP1134674A1 (en) 2001-09-19

Similar Documents

Publication Publication Date Title
KR100443495B1 (ko) 디지털 지도파일의 데이터구조
JP3332225B2 (ja) 地図提供システム
JP5075443B2 (ja) 道路地図データ生成装置、ナビゲーション装置、及び道路地図データ生成プログラム
JP5093562B2 (ja) ナビゲーション装置
JP4543637B2 (ja) 地図情報処理装置
US7197500B1 (en) System and method for use and storage of geographic data on physical media
JP4727245B2 (ja) 地図情報処理装置
EP1783724A2 (en) Road area extracting apparatus for extracting a road area from a block map, deformed map automatic generation system for generating a deformed map from road area data obtained by the road area extracting apparatus, map information providing system, geographical information providing system and geographical information describing method
CA2444271A1 (en) A method and apparatus for transmitting position information
CN105758412A (zh) 使用具有路线搜索加速数据的地图数据的导航装置
CN105841707A (zh) 采用地图机制的导航***及其操作方法
JP2007101865A (ja) 路線地図データの生成方法、路線地図データ更新システム、及び、路線地図データ管理装置
US6950100B2 (en) Map display device, a memory medium and a map display method
JP2004126036A (ja) 配信地図データ構造、配信地図データ作成方法、配信地図データ作成装置、および端末装置
JPH10312452A (ja) 地理情報提供システムと地理情報記述方法
JP2004354395A (ja) マップマッチング方法と装置
JP3649391B2 (ja) 端末装置
JPWO2005039058A1 (ja) 符号化データ生成方法と装置
CN113177046B (zh) 路网拓扑图的生成方法、装置、设备及存储介质
JP3894017B2 (ja) ナビゲーションシステム、ナビゲーションプログラム及び快速道路情報作成方法
CN102192748A (zh) 地图数据、存储介质和导航设备
JP2003157265A (ja) 端末装置
JP2003141121A (ja) 端末装置
JP2003150047A (ja) 端末装置
JP6141173B2 (ja) 地図情報および地図情報処理装置

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20080721

Year of fee payment: 5

LAPS Lapse due to unpaid annual fee