三维地图绘制系统的制作方法

文档序号:6002884阅读:249来源:国知局
专利名称:三维地图绘制系统的制作方法
技术领域
本发明涉及三维地图绘制系统,该系统用于绘制能三维地呈现地物的三维地图。
背景技术
有一种技术,用于在导航装置或计算机的屏幕等上显示电子地图时,三维地显示建筑物或道路等地物。在这种三维地图上,地物通过通常称为透视投影的投影方法来绘制。图I是表示通过透视投影来绘制三维地图的例子的说明图。如图I (a)所示,采用透视投影吋,是用将用户的视点PV与实际地物CSTl各部位加以连接的直线与投影面PLl间的交叉点的集合来得到投影结果PU。采用这种投影方法时,如图I (b)所示,能够以接近真实所见状态的状态来三维地绘制地物。上述例子是将视点PV设定在地物上方的情況。三维地图与ニ维地图相比,具有容易从视觉上直观地把握地图上所呈现的范围内的地理的优点。作为与三维地图显示有关的已有技术,有专利文献I和专利文献2。专利文献I公开了ー种技术,是在对三维地图信息进行透视投影时,判断交通标识是否隐藏在建筑物背后,在隐藏时就预先显示交通标识。专利文献2则公开了一种技术,是在从上空的视点进行透视投影时,只针对具有一定以上面积的多面体显示表示其名称的文字。专利文献I:日本专利第4070507号公报 专利文献2 日本专利第3428294号公报 发明要解决的问题
如图I (b)所示,透视投影能够提供与用户实际所见的景色相近的图像。然而,这种方法的问题在于不能保持所呈现的地图的比例尺。如图I (b)所示,随着从近景(图的下侧附近)向远景(图的上侧附近)延伸,会将纵深方向(图的上下方向)的距离绘制成比实际的间隔短。左右方向的间隔也会被绘制成远景比近景要短。即,地图上表示单位长度的距离在近景和远景上是不同的,左右方向和纵深方向都是如此。过去,三维地图的技术是カ求再现用户所见的真实世界,而没有考虑到透视投影导致的比例尺混乱。而地图上的比例尺混乱会导致大大地破坏地图的意义这ー重大问题。不能保持比例尺就意味着通过透视投影绘制的三维图像不能作为地图来发挥作用。为了准确地把握地物的位置关系等,用户最终只能參照平面的地图。

发明内容
本发明的目的就在于解决这ー问题,提供ー种保持比例尺的三维地图。以下说明本发明用于绘制能三维地呈现地物的三维地图的三维地图绘制系统的结构。本发明具备地物数据库、绘制范围输入部以及绘制部。地物数据库中存储了作为ニ维绘制数据的地物数据,通过从相对于铅直方向倾斜一定投影角度的倾斜方向进行平行投影来将地物投影在平面上,由此得到上述ニ维绘制数据。在本发明中,不是通过透视投影而是通过平行投影来绘制地物。地物数据也可以用栅格数据以及多面体数据的任意格式设置。不过,采用多面体数据能够抑制整体的数据量,即使放大绘制时也不会令图像变粗,因此能够提供高画质的地图。一旦绘制范围输入部输入了对要绘制三维地图的范围的指定,绘制部就从地物数据库读入与指定对应的地物数据来进行绘制。绘制过程既包括在计算机或导航装置等的显示屏上进行的地图显示,又包括用打印机进行的地图打印输出。要绘制的范围(以下称为绘制范围)的指定能够采用以经纬度坐标等来直接指定范围的方法、以及用绘制范围的代表点和放大缩小的倍率等来指定的方法等各种方法。除了由用户来输入绘制范围的方法外,还可采用输入导航过程中的当前位置从而由绘制范围输入部自动地设定范围的方法。采用本发明的三维地图绘制系统绘制的地图上,各地物是通过平行投影来实现三维呈现的。图2是表示通过平行投影来绘制三维地图的例子的说明图。如图2 (a)所示,采用平行投影时,是用穿过实际地物CST2的各点的规定平行线PRJ与投影面PL2间的交 叉点来得到投影结果PI2。如果平行线PRJ的方向为铅直方向、投影面PL2与地表面平行,则投影结果会成为二维的平面地图,但本发明是从与铅直方向不同的倾斜方向进行平行投影,因此就得到三维绘制的投影结果。图2 (b)是通过平行投影绘制的地图示例。例如,建筑物BLDl、BLD2、BLD3的边用平行线构成。这样采用平行投影时,实际地物的平行边在地图上也平行地表现。这意味着现实中具有一定宽度的建筑物在地图上也具有一定宽度。不仅是建筑物的宽度,道路宽度、建筑物彼此的间隔也是同样。即,采用平行投影时,尽管是用三维来表现地物,但左右方向及纵深方向的比例尺都得到维持。本发明通过这样利用平行投影,能够提供保持比例尺的三维地图。采用平行投影时,为了使由投影图得到的纵深感与实际的纵深相吻合,有时会在纵深方向加入一定的倍率进行绘制。即使是在这样加入一定倍率的情况下,只要是采用平行投影,就能在左右方向及纵深方向分别相对地保持比例尺。所谓平行投影的技术本身已在制图领域广泛使用,但像这样运用于三维地图还是第一次。如先前所述,现有三维地图的目标在于按用户亲眼所见的情况将景色忠实地加以绘制,因此从来未考虑过采用平行投影。发明人从忠实绘制景色的观念转换到重视保持地图比例尺的观念,由此想到采用平行投影。通过采用平行投影,本发明即使在绘制地图时的处理负担方面也有以下优点。采用透视投影(参照图I (a))时必须决定成为投影基准的视点PV,而采用平行投影(参照图2 (a))时则无须决定视点。从而,透视投影时,每当视点被指定,都要基于表示地物三维形状的三维模型来实施被称为透视图的投影处理,以得到投影图。而在平行投影时,由于无须指定视点,因此能够预先准备好针对规定的投影方向的绘制结果。无论如何指定地图的绘制范围,都能利用与视点无关地生成的绘制结果。结果是,本发明无须实施三维地图绘制时的透视图处理,因此能够大幅度减轻地图绘制时的处理负担。本发明还能够对假想地物进行平行投影,由此来生成地物数据,该假想地物是将地物在高度方向放大比I更大的系数倍后生成的。用户通常是从地上仰望地物。从地物的斜上方投影形成的平行投影有时会使人感觉从投影图得到的高度感比仰望真实地物时的高度感更低。如果对因采用上述系数倍而比真实地物更高的假想地物实施投影,就能缓解高度感方面的偏差。即使在高度方向乘上系数倍,也能維持左右方向及纵深方向的比例尺,因此不会有损本发明的优点。本发明也可以在地物数据库中存储比例尺不同的多个层次的地物数据。通过划分层次,就能在低层次将狭小区域详细地数据化,而在高层次则省略细部的地物,以抑制数据量并将广大区域数据化。即使设置三个以上的层次也无妨。绘制部能够利用与要绘制的范围相应的层次的地物数据来绘制地图。在这样设置多个层次的情况下,各个层次的地物数据最好是通过这样的平行投影来生成进行平行投影时的投影方位及投影角度(以下将投影方位及投影角度称为“平行投影參数”)相同。某一坐标点被投影的位置取决于平行投影參数。从而,如果预先在各个层次将平行投影參数加以统一,就容易使同一坐标点在各层次上的投影位置彼此对应。结果是,能够在将绘制范围的中心位置等特定的点固定的情况下比较容易地放大缩小地图。
还能够采取在各个层次使平行投影数据变化的形态。在这种情况下,当使绘制中所用的层次发生变化时,最好是在对绘制范围的中心位置等特定的点将于下一层次被投影的位置进行解析之后再进行下ー层次的绘制。本发明的地物数据库也可以针对同一区域存储投影方位不同的多种地物数据。在这种情况下,绘制范围输入部进ー步输入对用于绘制三维地图的方位的指定,绘制部则用与所指定的方位相应的投影方位的地物数据来进行绘制。这样ー来,就能绘制出从各个方向看到的三维地图,提高了方便性。从ー个方向投影的三维地图会产生隐蔽在三维绘制的建筑物背后而看不见的部位,即所谓死角,但通过提供投影方位不同的三维地图,就能消除这类死角。另外,当在导航过程中利用三维地图时,根据要引导的路径而相应地分别使用投影方位不同的三维地图,能够顺利地实现将行进方向显示在上侧的标题在上显示。在这种形态下,绘制的方位既可以是由用户指定,也可以是在标题在上显示中使用用户的行进方向。本发明还可以具备存储文字数据的文字数据库,该文字数据指定表示地物名称用的文字。当具备来自多个投影方位的地物数据时,文字数据库既可以是按各投影方位个别地准备,也可以是ー种文字数据库对应投影方位不同的多种地物数据。在对应多种地物数据的情况下,可以是文字数据具备标志(以下称为“在后标志(behind flag)”),该标志用于根据投影方向来指定是否将文字输出到三维地图上,绘制部则将用该标志指定的文字输出到三维地图上。所谓输出,包括在显示器等上的显示以及打印机等的印刷。在三维地图上,不同的投影方位会使地物或可辨认或隐蔽于死角中,因此最好能够相应地控制是否将表示地物的文字也加以输出。采用上述形态,由于预先将是否显示文字作为在后标志存储了,因此无须进行复杂的运算和解析处理就能恰当地控制文字的输出。在文字数据中,也可以用包含高度信息在内的三維信息来指定应将文字输出的位置。绘制部针对所指定的位置,在施行了与生成地物数据时的平行投影相同的平行投影的位置上输出文字,由此能够使显示中反映高度信息。这样ー来,不仅能在三维呈现的地物的接地部分,还能在高层的壁面附近或地物的上方等处显示文字,能够输出便于辨认的三维地图。高度信息可以用实测的米数值等和地物的楼层等各种形式来指定,也可以按照不同的地物发生变化。另外,也可以根据绘制方位指定不同的高度。 本发明的地物数据库也可以切分出由规定的二维区域构成的网格来存储地物数据。在这种情况下,最好是允许在各网格中存储网格上不存在的地物的地物数据。现有的平面电子地图是 将横跨网格而存在的地物的数据作为被各网格切分的多面体来存储。而在三维的电子地图上,横跨网格而存在的地物的数据如果是能够切分的就切分到各网格后存储,如果是不能切分的,就汇集到任一个网格中后存储。这样,采用现有的电子地图数据时,各网格的地物数据通常是将部分或全部地存在于该网格内的地物的数据加以存储。然而,采用平行投影时,作为过去从未产生的新的课题,是无论是存在于哪个网格内的地物,其上部都可能被绘制到其它的网格。本发明为了解决上述问题,允许在各网格中存储该网格上没有的地物的数据。这样一来,即使是要横跨网格被绘制的地物,也无须复杂的处理,能够通过平行投影来绘制三维地图。在本发明中,包含在地物数据中的道路数据也可以是考虑到道路上各地点的高度、即所谓起伏后实施平行投影得到的。当用这种地物数据在三维地图上绘制路径或当前位置等导航信息时,最好采用以下结构。导航信息输入部用由包含高度的三维信息所指定的信息,来输入将要绘制的导航信息、即路径位置和当前位置中的至少一方。绘制部针对所指定的信息,实施与生成地物数据时的平行投影相同的平行投影来绘制路径。当只有道路数据或导航信息中的一方具有高度信息时,在平行投影时会将导航信息与道路错位绘制。而采用上述结构时,即使针对导航信息也是实施与道路相同的平行投影,因此能够消除上述错位来绘制导航信息。不过,在基于不考虑起伏因素的二维数据来准备道路数据时,即使对于导航信息也无须实施平行投影,而用二维数据来绘制即可。在这种情况下,最好是预先将建筑物等道路以外的地物也作为不考虑起伏的数据来准备。本发明不限于上述的三维地图绘制系统,还能用各种形态来构成。例如,本发明也可以构成为一种地物数据生成方法,这种地物数据生成方法通过计算机来生成为了绘制三维地图而使用的地物数据。这种地物数据生成方法准备了三维地图数据库,该三维地图数据库中预先存储了表示地物的三维形状的三维模型。这种三维地图数据库能够通过以下等方法来实现设置在用于生成地物数据的计算机内、用DVD等介质提供、存储在可供计算机经网络来访问的服务器中。计算机输入对生成地物数据的对象即对象区域的指定,并且从三维地图数据库将存在于对象区域以及邻接的规定范围区域内的三维模型输入到存储器内。并且,针对存储器内的三维模型,通过平行投影来生成将地物投影到平面上的二维绘制数据并存储到存储器内,再从该二维绘制数据中提取出被指定为对象区域的区域内的数据,来生成并输出地物数据。如上所述,本发明不仅将存在于对象区域的三维模型加以读取,还将存在于与该对象区域邻接的规定范围内的三维模型加以读取,在此基础上实施平行投影。平行投影吋,存在于网格内的地物的投影图可能被绘制成超出该网格。相反,即使是不存在于对象区域的地物,也可能在平行投影后有一部分投影图被绘制在对象区域内。考虑到这些情况,本发明对包括与对象区域邻接的规定范围在内的范围实施平行投影。这样ー来,不存在于对象区域内的地物的投影图也能无ー遗漏地获得。规定范围可以根据网格大小以及平行投影參数来设定。投影角度越是接近铅直状态,规定范围就越狭窄,而越是接近水平状态,就越是要扩大规定范围。另外,规定范围不一定设定成使对象区域成为中心。例如,当从东面投影吋,投影图会向西侧延伸,因此不会将存在于对象区域西侧的网格中的地物的投影图绘制到对象区域中。也可以这样考虑到投影方位后仅将地物有可能被绘制到对象区域的那个方位的网格、即相对于对象区域而与投影方位ー侧邻接的网格设定为规定范围。此外,本发明既可以构成为用计算机绘制三维地图的三维地图绘制方法,也可以构成为用于使计算机实施这种绘制的计算机程序。另外,还可以构成为记录介质,这种记录介质可供记录了上述计算机程序的计算机读取。作为记录介质,可以利用软盘或CD-ROM、磁 光盘、IC卡、ROM卡盘、穿孔卡、印刷有条形码等符号的印刷物、计算机的内部存储装置(RAM和ROM等存储器)以及外部存储装置等可供计算机读取的各种介质。


图I是表示通过透视投影来绘制三维地图的例子的说明图。图2是表示通过平行投影来绘制三维地图的例子的说明图。图3是表示三维地图显示系统的结构的说明图。图4是表示地物数据的内容的说明图。图5是表示地物数据的数据结构的说明图。图6是表示投影角度与绘制结果之间的关系的说明图。图7是表示平行投影的投影方位的说明图。图8是表示地物数据的层次结构的说明图。图9是表示地物数据的层次结构的变形例的说明图。图10是表示地物数据的生成方法的说明图。图11是地物数据的生成处理的流程图。图12是表示地物数据与文字数据间的链接的说明图。图13是表示在后标志的内容的说明图。图14是地图显示处理的流程图。图15是表示实施例得到的三维地图的示例的说明图。图16是导航处理的流程图。图17是决定显示范围的处理的流程图。图18是表示起伏造成的影响的说明图。图19是表不考虑到起伏后的坐标变换方法的说明图。图20是坐标变换处理的流程图。图21是表示导航示例的说明图。
符号说明
100数据生成装置 101指令输入部 102平行投影部 103平行投影数据 104 3D地图数据库 105收发信部 106在后标志设定部 200服务器 201收发信部 202数据库管理部 203路径探索部 210地图数据库 211地物数据 212文字数据 213网络数据 300移动电话 300d显示器 300k键盘 301收发信部 302指令输入部 303 GPS输入部 304主控制部 305地图信息存储部 306显示控制部 307地图匹配变换部
具体实施例方式按以下顺序来说明本发明的实施例。A.装置结构
B.地物数据结构
BI.平行投影得到的数据
B2.多个投影方位
B3.层次结构
C.地物数据生成方法 D.文字数据结构
E.地图显示处理
F.导航处理
Fl.整体的处理F2.坐标变换
实施例I
A. 装置结构
图3是表示实施例的三维地图显示系统结构的说明图。该图中示出了基于从服务器200经网络NE2等提供的地图数据而在移动电话300上显示地图的结构示例。作为显示地图的终端,也可以采用个人电脑、导航装置等。另外,三维地图显示系统除了由移动电话300那种终端和服务器200构成的系统外,也可以构成为用独立系统(stand alone)来工作的系统。图中还一并显示了生成三维地图数据的数据生成装置100。移动电话300中构成了在主控制部304之下工作的各种功能块。在本实施例中, 主控制部304和各功能块是通过安装能够实现各功能的软件来构成的,但也可以是用硬件来构成其一部或全部。收发信部301经过网络NE2而与服务器200进行通信。在本实施例中,主要是收发用于显示三维地图的地图数据以及指令。指令输入部302通过键盘300k等的操作将来自用户的指示输入。作为本实施例中的指示,有三维地图的显示范围、对扩大和縮小的指定、进行导航时的出发地和目的地的
设定等。GPS输入部303基于GPS (Global Positioning System)的信号来获得经纬度的坐标值。另外,在导航过程中,基于经纬度的变化来算出行进方向。地图信息存储部305是将服务器200提供的地图数据加以暂时存储的缓存器。当如导航时那样,要显示的地图时时刻刻在移动时,就从服务器200接收仅靠地图信息存储部305无法满足的那个范围的地图数据来显示地图。地图匹配变换部307在进行导航时,为了将已探索的路径及当前位置准确地显示在经过平行投影的三维地图上的道路上,对路径位置及当前位置的坐标值实施必要的坐标变换。关于坐标变换的方法将在后面说明。显示控制部306基于地图信息存储部305及地图匹配变换部307提供的数据,在移动电话300的显示屏300d上显示三维地图。在服务器200中构成了图中所示的功能块。在本实施例中,这些功能块是通过安装能够实现各功能的软件来构成的,但也可以是用硬件来构成其一部或全部。地图数据库210是用于显示三维地图的数据库。在本实施例中,存储了包含地物数据211、文字数据212、网络数据213在内的地图数据。地物数据211是用于三维地显示道路、建筑物等地物的数据,是通过对地物的三维模型实施平行投影得到的ニ维多面体数据。文字数据212则是要在地图上显示的文字,例如地物的名称或地名等数据。网络数据213是用节点和链接的集合来表现道路的数据。所谓节点,是相当于道路彼此的交点或道路的端点的数据。链接则是将节点与节点连接的线段,是相当于道路的数据。在本实施例中,构成网络数据213的节点和链接的位置是用经纬度以及高度的三维数据来決定。收发信部201经过网络NE2而与移动电话300之间进行数据的收发。在本实施例中,主要是收发用于显示三维地图的地图数据以及指令。另外,收发信部201还经过网络NEl与数据生成装置100之间进行通信。在本实施例中,主要是收发已生成的地图数据。
数据库管理部200控制从地图数据库210的数据读出和写入。路径探索部203则利用地图数据库210内的网络数据213来进行路径探索。在路径探索过程中,能够采用迪杰斯特拉算法(夕'' 47卜^法)等。在数据生成装置100中构成了图中所示的功能块。在本实施例中,这些功能块是通过在个人电脑上安装能够实现各功能的软件来构成的,但也可以是用硬件来构成其一部或全部。收发信部105经过网络NEl而与服务器200之间进行数据的收发。指令输入部101则经过键盘等输入操作者的指令。在本实施例中,包含对要生成地图数据的区域的指定和对平行投影参数的指定等。
3D地图数据库104是将用于生成地图数据的三维模型加以存储的数据库。关于道路和建筑物等地物,则存储了表示三维形状的电子数据。3D地图数据库104可以利用已有的为了用透视投影来显示三维地图而备的三维模型。平行投影部102基于3D地图数据库104来通过平行投影进行绘制,以生成地物数据。绘制的投影图被存储于平行投影数据103中,且经过收发信部105而被存储在服务器200的地图数据库210的地物数据211中。平行投影部102在进行平行投影的处理过程中,判定各个地物是否成为其它地物的死角,并将判定结果转移到在后标志设定部106。在后标志设定部106从3D地图数据库104输入表示各个地物的名称的文字数据,并基于从平行投影部102获取的判定结果来设定在后标志,该在后标志对是否要在地图上显示各文字加以指定。当某一地物成为另一地物的死角时,在后标志被设定为表示不显示文字的值,当未成为死角时,就被设定为表示显示文字的值。在本实施例中,地物数据211是针对多个投影方位准备的,且死角会根据投影方位而发生变化,因此在后标志按每个投影方位来设定。B.地物数据结构
BI.平行投影得到的数据
图4是表示地物数据的内容的说明图。表示通过平行投影而从三维数据D3得到数据Dl、D2的情况。三维数据D3是在平面P3上用x、y、z的三维坐标来表示建筑物M3的形状的数据。一旦沿铅直方向(图中箭头Al方向)将该建筑物M3平行投影到平面Pl上,建筑物M3就如同长方形Ml那样成为二维呈现的数据D1。这相当于现有的二维地图数据。而在本实施例中,是在相对于铅直方向倾斜规定的投影角度的倾斜方向(图中的箭头A2方向)的平面P2上进行平行投影。结果,就在数据D2上如建筑物M2那样三维地绘制出建筑物。建筑物M2虽然是用三维方式来表现的,但数据D2归根结底是经过投影的二维的绘制数据。在本实施例中,是用投影面内的Uv坐标内的坐标值(Ul、vl)、(U2、v2)等的点列来规定用于绘制建筑物M2的多面体数据。既可以用建筑物M2的侧壁和屋顶部分作为个别的多面体数据,也可以将整体作为一个多面体数据。窗户W则既可以作为贴在建筑物壁面上的纹理、即作为栅格数据来准备,也可以将窗户作为个别的多面体数据来准备。用这样通过倾斜方向的平行投影对各个地物进行投影后得到的二维数据来构成本实施例的地物数据。图5是表示地物数据的数据结构的说明图。以一个建筑物BLOl为例来说明数据结构。在图的左侧,二维地显示了该建筑物BLOl的位置关系。地图数据被切分成网格MOl和M02。用POl (LAT01、LONO I)来表示左下角的经纬度的网格MO I内的矩形是建筑物BLOl0建筑物BLOl的经纬度用坐标G (LATb、LONb)来表示。此处表现的是建筑物BLOl未超出网格MOl的例子。一旦对存在于这个位置上的建筑物BLOl进行平行投影(箭头CH01),即如网格M03、M04所示,建筑物BLOl被三维地绘制。在本实施例中,网格M03左下方的经纬度P02(LAT02、L0N02)与网格MOl的POl —致。在本实施例中,就这样将网格M03、M04各顶点的经纬度定义为与平面上的网格M01、M02的顶点的经纬度一致。不过,投影面上的网格M03、M04也可设定成与平面上的网格M01、M02无关。平行投影的结果是,建筑物BLOl不仅由网格M03内的部分BL03进行绘制,还由网格M04内的部分BL04进行绘制。在本实施例中,如箭头CH03、CH04所示,在用于绘制一个建筑物BLOI的多面体中,分成属于网格M03的部分BL03和属于网格M04的部分BL04,并且各自作为不同的多面体数据来进行管理。在图的右侧显示了各多面体数据的结构示例。在针对各多面体的数据中存储了名称、位置、形状、类别、文字、属性等。在本实施例中,作为名称,采用了建筑物的名称BLOI。对属于网格M03的部分BL03和属于网格M04的部分BL04给予共同的名称,因此能够判别出二者是针对同一建筑物的多面体。作为名称,也可以在多面体上使用固有的名称。在这种情况下,最好是另外准备与针对同一建筑物的多面体彼此相关的信息。位置是指建筑物BLOl所在的经纬度的坐标(LATBLONb)。形状就是用各网格内定义的相对的二维坐标Uv来对形成多面体的点列加以限定的数据。部分BL03的形状数据Pbl (ul、vl)、Pb2 (u2、v2)等数据是用网格M03内的uv坐标来表示顶点Pbl、Pb2的位置的值。部分BL04的形状数据Pb3 (u3、v3)、Pb4 (u4、v4)等数据是用网格M04内的uv坐标来表示顶点Pb3、Pb4的位置的值。在类别中存储了多面体所代表的地物的种类。文字则是表示地物的名称的数据,在本实施例中,文字数据是与地物数据分开准备的,因此在地物数据中存储了表示文字数据的存储地址的数据(图中的LINK)。作为表示存储地址的数据,可以采用与建筑物BLOl所对应的文字数据对应的通路、地址、URL (Uniform Resource Locator)等。
属性是指针对地物的附加信息。例如,如果是建筑物,可以采用高度、楼层数,如果是道路,则可采用行车道宽度、国道等类别等。图6是表示投影角度与绘制结果之间的关系的说明图。如前所述,在本实施例中,是对地物平行投影得到投影图,且将绘制该投影图的数据作为地物数据使用。作为平行投影参数的投影角度和投影方位可以任意设定。如图左侧所示,将投影角度Ang定义成以来自铅直方向的投影(图中的PAO )为O度,且随着向水平状态接近而使角度增大。即,投影角度 Ang 是 PAO < PAl < PA2 < PA3。图中右上方的图像MGl是在投影角度PAl上的平行投影图。右下方的图像MG2则是在投影角度PA2上的平行投影图。投影角度Ang越小,如图像MGl所示,感觉越接近平面地图,容易把握建筑物彼此的位置关系。投影角度Ang越大,如图像MG2所示,越容易直观地把握建筑物的形状。投影角度可以考虑这些视觉效果来设定。另外,也可以准备投影角度不同的多个地物数据来供用户选择。在本实施例中,对现实的建筑物并不是原封不动地实施平行投影,而是只在高度方向乘上比I更大的系数后进行平行投影。如图的左侧所示,对建筑物BLD的实际高度h乘上系数C后求出高度为C · h的假想建筑物,再对其进行平行投影,由此得到右侧的图像IMGU IMG20用户通常是从下方仰视建筑物。因而,一旦以从上方看的形式进行平行投影,从投影图得到的建筑物的高度感会与现实中仰视时的高度感不一致。对此,如上所述,如果对乘上系数C后只在高度方向放大的假想建筑物实施平行投影,就能缓解高度感方面的不适感。 系数C可以在考虑了视觉效果后任意地设定。比较图像頂Gl和MG2可知,建筑物的高度感还会随着投影角度Ang的不同发生变化,因此在用多个投影角度Ang进行平行投影时,也可以根据投影角度Ang来变化系数C。不过,在上述不适感不成问题的情况下,也可以不乘上系数直接进行平行投影。B2.多个投影方位
平行投影参数是投影角度和投影方位。投影角度如先前图6所示,是表示朝着从铅直方向倾斜何种程度的方向投影的参数。投影方位则是表示向哪个方位倾斜的参数。地物数据也可针对单一的投影方位来准备,但本实施例是针对多个方位准备的。图7是表示平行投影的投影方位的说明图。如图所示,在本实施例中,针对一个区域AR,有每个方位各错开45度的方位I 方位8这八个方位,对这些方位分别进行平行投影,生成地物数据。例如,在方位I上得到以从北侧看到的状态进行平行投影的投影图,在方位5上则得到以从南侧看到的状态进行平行投影的投影图。即使是在方位I上成为死角的建筑物,在相反方向的方位5上也不会成为死角,而是得到绘制。如果预先在多方位上准备了地物数据,即使是产生了死角,该死角的地理情况也能够在其它方位的地图上得到确认,因此能够缓和三维显示导致的死角所带来的不便。在本实施例中,准备了八个方位的地物数据,但也可以是四个方位、十六个方位或更多。根据本发明人的研究结果,如果以十六个方位来准备地物数据,并且依次切换各方位的投影图,就像一边绕着区域AR的周围转一边看着区域AR那样,能够实现没有不适感的显示。从上述观点来看,地物数据最好是针对十六个方位来准备。B3.层次结构
图8是表示地物数据的层次结构的说明图。在本实施例中,地物数据及文字数据都分成多个层次来构成。层次LVl是用于详细地显示狭小区域的数据。层次LV3是用于通过将成为绘制对象的地物加以间隔剔除来有效地显示广大区域的数据。层次LV2则是用于绘制层次LV1、LV3的中间区域的数据。这些层次根据所要显示的地图的放大和缩小而分开使用。不限于三个层次,也可以是两个层次或四个层次以上。在本实施例中,在层次LVl LV3中都用相同的平行投影参数来进行平行投影。即,如图所示,地表面GL上的特定区域(图中有阴影的部分),无论在层次LVl LV3中的哪个层次上,都被同样地投影。从而,即使随着地图的放大、缩小显示而切换了层次,也能够在下一个层次上容易地特别指定与前一层次上的显示区域对应的区域,并能用较为简易的处理来实现流畅的显示。图9是表示地物数据的层次结构的变形例的说明图。这里显示了在低层次LVl与中层次LV2上平行投影参数不同的例子。在低层次LVl上,是以投影角度大(接近水平)的状态进行投影,而在中层次LV2上,则是以投影角度小(接近铅直)的状态进行投影。结果是,由于低层次LVl的坐标系ul、vl与中层次LV2的坐标系u2、v2是不同的坐标系,因此在各个层次上难以特别指定与地表面GL有阴影的区域对应的范围。当在此状态下将显示从低层次LVl切换到中层次LV2时,要先求出与低层次LVl上的显示范围对应的地表面GL上的范围,然后来特别指定与该范围对应的中层次LV2上的范围。在能够允许这样的处理负担的情况下,如图9所示,也可以是在每个层次上变化平行投影参数。例如,越是大区域的层次投影角度越小(接近铅直),这样能够使绘制的地图接近平面地图。即,通过使层次发生变化,能够分别利用平面地图的优点和三维地图的优点。 C.地物数据生成方法
图10是表示地物数据的生成方法的说明图。在本实施例中,通过对包含在三维地图数据库中的三维地物数据进行平行投影来生成地物数据。不过,当将地图数据划分成网格来生成和管理时,如果以网格单位来实施平行投影,有时不能恰当地生成地物数据。以下是生成与图10中有阴影的网格MP对应的地物数据的情况。在3D地图数据库中,如图所示,在网格MP的周围存在Mll M55的网格,在各网格中存在各种地物。这里,是对与网格MP邻接的网格M34中存在的地物B34进行平行投影。一旦沿着用图中的Vp j34表示的方向进行平行投影,地物B34的上部就被投影到网格MP内。在像这样用平行投影来生成地物数据时,对于成为处理对象的网格MP来说,有时该网格内不存在的地物的一部分也会被投影。从而,如果单纯地对每个网格进行平行投影,其它网格中存在的地物的投影图就会缺失,不能获得恰当的地物数据。为此,在本实施例中是针对成为处理对象的网格MP读入与其邻接的网格(M22、M23、M24、M25、M32、M34、M42、M43、M44)以及与这些网格邻接的网格(Mil M15、M21、M25、M31、M35、M41、M45、M51 M55)的三维地物数据,且对网格Mll M55全体实施平行投影,在此基础上将与网格MP对应的那部分多面体切下,由此来生成地物数据。这样一来,在进行网格MP的处理时,对于邻接的网格M34中存在的地物B34也实施了平行投影,因此能够实现其上部也不会遗漏的地物数据化。在本实施例中,如上所述,是利用从成为处理对象的网格MP起到两个区域为止的位置上所存在的网格,但用于生成地物数据的范围可以任意设定。当各网格的尺寸与地物尺寸相比足够大,处于隔开两个区域的位置上的地物不能投影到成为处理对象的网格中时,也可以只利用隔开一个区域、即直接与成为处理对象的网格邻接的网格来进行平行投影。相反,当网格的尺寸与地物尺寸相比较小时,也可以用隔开三个区域以上的范围进行平行投影。而且,用于平行投影的范围不必是在成为处理对象的网格MP周围均等配置,也可以从投影方位考虑而偏向一方。例如,可以如图10那样以箭头Vpj34的方位进行平行投影。此时,与网格MP的左侧邻接的网格M32中存在的地物B32在箭头Vpj34方向被投影,投影图绘制在地物B32的左侧。即,在这个投影方位上,地物B32不会被投影到网格MP中。从而,在处理网格MP时,不必将网格M32用于平行投影。同样,当以图10中的箭头Vp的投影方位进行平行投影时,只要有用粗线包围的范围(网格 M34、M35、M43 M45、M53 M55)即可。这样,即使将用于平行投影的范围设定成比成为处理对象的网格MP更偏向投影方位一侧也无妨。图11是地物数据的生成处理的流程图。这种处理由数据生成装置100的平行投影部102 (参照图3)来进行,并且硬件上由构成数据生成装置100的个人计算机的CPU来执行。一旦开始处理,CPU就输入对成为处理对象的网格的指定(步骤S100)。这种处理相当于对图10中网格MP的指定。指定方法可以采用网格固有的索引和网格的坐标等。也可以由数据生成装置100解析某个网格,该网格中包含了操作者在地图上指定的点的坐标 值,并且将该网格设定为处理对象的网格。另外,CPU将平行投影参数、即投影方位和投影角度输入(步骤SlOl )。平行投影参数既可是每次生成地物数据时由操作者指定,也可以在数据生成装置100内预先设定默认的平行投影参数。然后,CPU针对对象网格及其周边规定范围内的网格而将3D地图数据库读入(步骤S102)。在本实施例中,如图10所示,是将从对象网格MP起两个区域以内的网格中所属的3D地图读入。如针对图10所说明的,这个范围可以任意设定。读入的3D地图数据暂时存储在数据生成装置100的存储器内。针对已读入的3D地物数据,CPU基于在步骤SlOl中指定的平行投影参数来实施平行投影(步骤S103)。通过这一处理,就绘制出通过平行投影而将各地物三维地表现出来的投影图。在本实施例中,这些绘制结果作为二维的多面体数据而被暂时存储在数据生成装置100的存储器内。也可将绘制结果作为栅格数据来存储。一旦平行投影结束,CPU就从已生成的多面体数据切出与对象网格相当的区域(步骤S104)。对于横跨多个网格被绘制的多面体,如图5所示,只将处于对象网格内的那部分提取出,并重新设定为新的多面体数据。另外,在进行这个切出时,一并给各多面体准备好名称、位置、形状等图5所示的各种数据。然后,CPU将其作为地物数据存储(步骤S105)。在本实施例中,在发出针对地物数据211的存储指令的同时,将数据向服务器200 (参照图3)发送。通过针对全体网格实施以上的处理,就能准备好本实施例的地物数据211。D.文字数据结构
图12是表示地物数据与文字数据间的链接的说明图。在图的左侧示意地显示出地物数据211的结构。如图8所示,地物数据分成层次LVl LV3来进行准备,在各层次上又分成图7所示的方位I 方位8来进行准备。如图中所示,层次LVl上的方位I 方位8的地物数据中共同包含了与BL03这个名称的地物对应的记录。与该地物对应的记录还存在于层次LV2、LV3上的地物数据中。这样,在本实施例中,针对同一地物的记录就重复地存在于各个层次和方位。在文字数据212中存储了多个文字记录,这些文字记录中记录了代表各地物的名称的文字信息。在本实施例中,文字记录也按各个层次来准备。
在地物数据的各个记录中,记录了用于表示文字记录的存储地址的信息链接,而这种文字记录代表了该地物的名称。在本实施例中,是针对各层次内的多个方位上的地物数据而共用一个文字记录,因此在层次LVl上存储于地物BL03中的信息链接的内容相同。在图中,针对多个地物记录,用箭头表示一个文字记录所对应的状态。在文字记录中,存储了名称、显示内容、字体、颜色、尺寸、在后标志、位置、高度等信息。名称是文字记录所对应的地物的名称。也可以利用构成地物的多面体的名称。如图5所示,有时一个地物会用多个多面体来绘制,因此在利用多面体的名称时,会存储多个名称。显示内容为代表地物名称的文字列。字体、颜色、尺寸是对文字列的显示形态加以规定的信息。 在后标志是用于对文字可否显示实施控制的标志,与地物数据的方位对应地设定。图中的例子设定为“1、1、1、1、0、0、1、1”,因此意味着在方位I 4以及方位7、8显示文字(设定为“1”),而在方位5、6则不显示(设定为“O”)。关于在后标志的设定方法将在后面说明。位置是显示文字的坐标。能够采用与对应的地物的代表点的坐标、即地物数据中的“位置”信息相同的值。高度是显示文字的高度。高度既可以以米等为单位来表示,也可以用显示时的像素、地物的楼层数等来表示。通过指定高度信息,能够在比地物的接地面高的位置上显示文字,并且能够实现便于人把握文字与地物间关系的显示。在本实施例中,高度是作为全方位共同的值,但也可以如在后标志那样,针对每个方位来设定。在本实施例中,是针对每个层次来准备文字数据,但也可以是针对全体层次准备共同的文字数据。在这种情况下,也可以根据层次来设定对文字数据的显示/不显示进行控制的标志。这种标志可以采用以在后标志为准的形式。图13是表示在后标志的内容的说明图。中央的图二维地显示建筑物BL03、BL04这两个地物的配置。另外,显示了各方位上建筑物BLOl的在后标志(BF)的设定值。在从方位I对建筑物BLOl、BL04进行平行投影时,建筑物BLOl未成为建筑物BL04的死角而可辨认。在方位I上,代表建筑物BLOl的名称的文字在地图上也能毫无妨碍地显示出来,因此在后标志BF被设定成意味着文字显示的“I”。方位2、3、7、8也是同样。右下方的投影图PIC4是来自方位4的平行投影图。如图所示,从方位4进行平行投影时,建筑物BLOl不会成为建筑物BL04的死角。从而,在后标志BF被设定成“ I ”。下方的投影图PIC5是来自方位5的平行投影图。在此状态下,建筑物BLOl成为建筑物BL04的死角。在上述状态下,一旦显示建筑物BLOl的名称,用户就会不知道是显示哪个建筑物的名称。从而,在此状态下,建筑物BLOl的文字应该是不显示的,因此将在后标志BF设定为意味着不显示的“O”。
左下方的投影图PIC6是来自方位6的平行投影图。在此状态下,如图所示,建筑物BLOl只能看到一点上部。像这样只能部分地看到时,可以将在后标志任意设定为“显示”或“不显示”。在该图中,考虑到只能看到很少一点,因此将在后标志BF设定为不显示的“O”。不过,考虑到虽然是局部但仍然可以看到建筑物BL03的情况,也可以将在后标志BF设定为“I”。图13中说明了对建筑物BLOl设定在后标志的情况,但对于建筑物BL04也能同样地设定。在图13所示的状态下,将建筑物BL04的在后标志针对全方位设定为“I”较恰当。至于是否成为死角,不仅取决于建筑物的平面位置关系,还取决于建筑物的高度,因此最好是根据平行投影的结果来设定在后标志。即使在图13的例子中,当建筑物BLOl的高度比建筑物BL04高很多时,在后标志BF也可能在全方位都是“I”。在后标志既可以由操作者手动设定,也可以在地物数据生成处理过程(参照图11)中在进行各地物的平行投影时判定是否成为其它地物的死角,然后自动地设定。对于像图13的方位6上的建筑物BL03那样部分可见的地物,例如可进行以下处理。 (I)当被绘制部分的面积达到规定值以上时给予显示;
(2)当被绘制部分的面积达到建筑物BLOl的规定比例以上时给予显示;
(3)当建筑物BLOl的接地部分的一部分或全部被绘制时给予显示。(4)当被绘制部分达到规定楼层数以上时给予显示。E.地图显示处理
图14是地图显示处理的流程图。在本实施例中,是移动电话300的主控制部304以及显示控制部306实施的处理,是硬件上由移动电话300的CPU实施的处理。在这个处理过程中,首先是CPU输入对显示位置、方位及范围的指定(步骤S300)。既可以是用户用键盘等来加以指定,也可以将用GPS得到的当前位置作为显示位置使用。CPU从在过去的地图显示处理中已经获得且保持在移动电话300内的地图信息中提取出与所指定的内容对应的地图信息(步骤S301)。所谓地图信息,是对地物数据、文字数据、网络数据等显示地图所必需的各种数据的总称。图中显示了提取的状态。在用网格切分的地图信息ME中,附加阴影的部分是已保持在移动电话300中的地图信息。区域IA表示与来自用户的指定对应的范围。在这个例子中,已保持的地图信息中与区域IA重叠的部分、即除了网格ME3、ME4之外的部分被提取出。关于不与区域IA重叠的网格ME3、ME4,既可作为无用信息除去,也可以在移动电话300的存储器允许的情况下加以保留。当提取出的地图信息不足以显示地图时(步骤S302),CPU就从服务器200获取不足部分的地图信息(步骤S303)。在上述例子中,为了显示区域IA,仅用网格ME1、ME2是不够的,因此要取得这些地图信息。一旦这样完成地图信息的获取,CPU就开始绘制地物(步骤S304)。在本实施例中,地物数据不过是经过平行投影后的二维多面体数据,因此只要按照已取得的地物数据来绘制多面体,就能显示三维地图。过去的技术是用三维模型来进行所谓透视图处理,以制作成透视投影图且绘制出三维地图,因此透视图所需的处理负担非常大,而本实施例能够以极轻的负担来绘制出三维地图,具有巨大优势。CPU将在后标志被设定为“I”的文字在地图中显示出来(步骤S305)。文字的显示也可与地物的绘制(步骤S304) —并进行。显示的地图中的文字显示位置可以按以下顺序来设定。首先,构成地物数据的各网格的顶点的经纬度是已知的,因此要在网格内特别指定与已被附加了文字记录的位置信息(经纬度)对应的点。可以基于文字记录的经纬度来对各网格顶点的经纬度进行插值,以求出在网格内被规定的uv坐标值。然后根据高度信息使文字的显示位置沿U轴方向移动。当高度信息用显示时的像 素值来指定时,可以采用指定值。当高度信息用米数或楼层数给出时,可以乘上与投影角度对应的系数来转换成像素值。在本实施例中,通过利用在后标志,能够只针对不成为死角的地物来显示文字。在后标志是按每个方位设定的,因此能够根据所指定的方位来作文字显示/不显示的切换。当在三维模型上实施透视图处理时,在透视图的处理过程中必须判断地物是否成为死角以控制文字的显示/不显示,因此控制文字的显示/不显示所需的处理负担非常大,而本实施例却能够以极轻的负担来进行控制,具有巨大优势。图15是例举实施例所得到的三维地图的说明图。显示了与图15 (a)的照片对应的地域的输出示例。过去用透视投影得到的三维地图的输出也是像图15 (a)那样。图15Ca)的显示具有容易把握建筑物BL1、BL2的形状、并且立于该地点的用户能够迅速直观地识别建筑物BLl、BL2的优点。不过,在图15 (a)上既难以把握二者的位置关系,又不能把握到远方其它建筑物的距离。图15 (b)是二维地图的输出示例。图15 (b)中也是用虚线包围了与图15 Ca)中的建筑物BL1、BL2对应的建筑物。在二维地图中,容易把握建筑物BL1、BL2的位置关系,但如果用户实际立于该地域,就会难以直观地将图中所示的地物与图15 Ca)中的建筑物BL1、BL2对应。图15 (C)是本实施例中的输出示例。图15 (C)中也用虚线包围了建筑物BL1、BL2。是通过平行投影来绘制,并维持了地图的比例尺。从而,能够与二维地图(图15 (b))同等地把握建筑物BL1、BL2的位置关系、以及从这些建筑物到远方建筑物的距离。另外,在图15 (C)上是三维地显示地物,因此还能直观地认识建筑物BL1、BL2的形状。图15 (C)是以从上方向下看的方式来进行绘制,而实际立于该地点的用户则是如图15 (a)那样从下方仰视建筑物BL1、BL2,但即便如此,也能基于图15 (c)的显示直观地识别建筑物BL1、BL2。本实施例的三维地图显示通过利用平行投影而能够同时兼备二维地图维持比例尺的长处和三维地图容易直观地把握地物形状的长处。在图15 (c)中,显示了“〇〇大楼”、“第二 * *大楼”这样的文字。其它地物的名称则省略显示,以避免图中复杂化。在本实施例中,指定了包含高度信息在内的文字的显示位置,因此如图所示,不仅在各建筑物接地部分而且还在上部显示文字。在三维地图中,通过这样在地物的上部显示文字,能够避免文字成为其它地物的死角,便于识别文字与地物的对应关系,能够实现自然的显示。
在本例中,作为文字的高度信息,是通过指定建筑物的高度来将文字配置在各建筑物的屋顶上。高度信息能够任意设定,也可以在建筑物的侧壁部分显示文字。F.导航处理
Fl.整体的处理
图16是导航处理的流程图。左侧显示移动电话300的处理,右侧显示服务器200的处理。这些是由图3所示的各种功能块协同实施的处理,并且是硬件方面由移动电话300和服务器200的CPU实施的处理。首先,移动电话300的用户指定要探索的路径的出发地和目的地(步骤S210)。出发地也可利用由GPS取得的当前位置。目的地则可用地物名称、住所、经纬度的坐标值等各种方法来设定。移动电话300将这些指定结果发送到服务器200。—旦输入了对出发地和目的地的指定(步骤S200),服务器200就利用网络数据·213 (参照图3)来探索路径(步骤S201)。探索路径例如可以采用迪杰斯特拉算法等。服务器200将探索结果、即成为路径的网络数据向移动电话300输出(步骤S202)。移动电话300 —旦收到探索结果(步骤S211),就按以下顺序进行导航。首先,移动电话300输入用户的当前位置和行进方向(步骤S220)。当前位置可以由GPS来特别指定。行进方向则可以基于从从前的位置到当前位置的变化来求出。然后,移动电话300进行显示范围决定处理(步骤S220)。这个处理是基于当前位置和行进方向来决定地图的显示范围的处理。图17是决定显示范围的处理的流程图。移动电话300首先基于行进方向来决定地图的方位(步骤S221 )。如用图7所说明的那样,本实施例针对八个方位准备了地物数据,因此要根据行进方向来选择要使用的方位。图中显示了地图方位的决定方法。中央的四角区域代表成为显示对象的区域,在其周围显示出与图7对应的八个方位。在各个方位上,如虚线所示,各自被分配了 45度的角度范围。移动电话300从这八个角度范围选择包含行进方向在内的区域。例如,当沿着箭头HD所示的方向行进时,选择方位5。角度范围可以根据地物数据所准备的方位数来决定。当准备了十六个方位的地物数据时,角度范围是22. 5度,四个方位时就是90度。不过,也可以如图中的方位I和方位8那样,将分配给各方位的角度范围设定成比45度大,使方位之间有重复区域。图中用点划线所示的范围表示比45度更宽的角度范围。一旦这样对方位I和方位8分配较大的角度范围,就会在二者之间产生如附加了阴影的区域HA那样的重复区域。如果事先这样设定,在决定方位时,就能将这个区域作为滞后区域使用。例如,当行进方向从方位8变化成方位I时,即使行进方向进入了重复区域HA仍使用方位8,相反,当行进方向从方位I变化成方位8时,即使行进方向进入了重复区域HA仍使用方位I。通过这样设定滞后区域,当行进方向在方位I和方位8之间的边界附近发生细微变化时,能够避免所显示的地图频繁地切换。图中所示为在方位I和方位8之间设置重复区域HA,而在其它方位之间也同样可以设置重复区域。一旦这样决定了显示方位,移动电话300就能够基于当前位置和方位来决定显示范围(步骤S222)。图的右侧显示导航过程中决定显示范围的示例。显示的是沿着用虚线表示的路径PS移动到位置P0S1、P0S2、P0S3的情况。在位置POSl上,行进方向DRl相当于朝图中正上方,即相当于处于方位5 (参照步骤S221中的图)。从而,移动电话300用方位5的地物数据将宽度XAr、纵深YAr的范围设定为显示范围Arl0宽度以及纵深的尺寸既可以用来自用户的指令来决定,也可以根据用户的行进速度自动地设定。行进速度可以根据当前位置随时间的变化来算出。然后,一旦移动到位置P0S2,行进方向DR2就略微向右侧变化。但这个行进方向DR2还属于方位5的角度范围内,因此移动电话300在位置P0S2上仍选择方位5来决定显示范围AR2。结果,在从位置POSl向位置P0S2移动的过程中,虽然行进方向已向右变化,但地图还是按方位5那样以平行移动的形式来实施导航显示。然后,一旦移动到位置P0S3,行进方向DR3就进一步向右侧变化。 该行进方向DR3偏离方位5的角度范围而属于方位6的角度范围。从而,移动电话300就在位置P0S3上选择方位6并决定显示范围AR3。在导航时,在从位置P0S2到达位置P0S3的途中,就将地图显示从方位5切换到方位6。现在返回图16来说明导航处理。在本实施例中,代表路径的网络数据以及当前位置用包含高度在内的三维位置坐标来规定。另外,道路也会反映所谓起伏、即地表面的高度变化,因此通过对具有高度信息的3D数据实施平行投影来生成。从而,如果不是用与平行投影相同的方法对网络数据进行平行投影后在地图上显示,路径的显示就会偏离道路。因此,本实施例为了在道路上恰当地显示路径,是对当前位置及网络数据实施平行投影来得到显示位置。这就是坐标变换处理(步骤S230)。关于坐标变换的方法将在后面说明。一旦结束了以上的处理,移动电话300即按照指定的显示范围来实施地图显示处理(步骤S300)。这个处理内容与先前图14所示的处理相同。然后移动电话300显示路径及当前位置(步骤S310 )。路径既可用与道路不同的颜色和线条等来显示,也可沿着要行进的方向或在拐角等上用箭头等来表示。移动电话300重复实施步骤S220以后的处理来进行导航,直到用户到达目的地(步骤 S311)。F2.坐标变换
图18是表示起伏造成的影响的说明图。图中的面A2D代表二维地图中的地表,面A3D则代表三维地图中的地表。如右侧所示,本实施例中的网络数据213以及用于生成地物数据的3D地图数据库104是具有与面A3D相当的三维信息的数据。与二维平面A2D内的网格M2D对应的范围与有起伏的网格M3D对应。面Ap表示通过平行投影得到的投影图。由于是向用箭头Vpj表示的方向投影,因此与二维平面A2D内的网格M2D对应的范围成为稍稍斜向偏离的位置上的网格MP2。最下方的面Ag是用GPS得到的经纬度的坐标面。在本实施例中,当前位置如点P3D (X、y、z)所示,是用三维的位置坐标给出。该坐标在二维上与位置Cpg (纬度、经度)对应,且在绘制二维地图的面A2D上相当于网格M2D内的点P2D (x、y)。如果对点P3D进行平行投影,就被绘制成面Ap上的网格Mp2内的点Pp2。而如果在点P3D的三维坐标中将二维的要素U、y)认定为实施了平行投影后的坐标值,则在面Ap内会绘制成与本来的网格Mp2不同的网格Mpl内的点Ppl。这就与本来的点Pp2之间产生了误差Vc。为此,本实施例在面Ap内针对点P3D来实施坐标变换,该坐标变换相当于移动误差Vc的量,由此来实现对点P3D进行平行投影后的状态下的绘制。图19是表示考虑到起伏后的坐标变换方法的说明图。是求出与图18所示的误差 Vc相应的矢量,并以此为修正量进行坐标变换。从这个意义上说,以下也将误差Vc称为修正矢量Vc。图中的箭头Vpj表示平行投影的方向。点P3D是要通过该平行投影而投影到点Pp2的点。只用点P3D的X、Y坐标进行投影的结果是点Ppl,因此误差Vc成为从点Ppl向着点Pp2的矢量,与图中的矢量Vc相等。修正矢量Vc可以通过将旋转和平行移动加以组合的仿射变换行列来求得。在保持点P3D的高度不变的状态下求出与沿着一 X方向平行移动的矢量VcO相当的变换行列。如果使用投影角度Ap,矢量VcO的大小就用与点P3D的高度z间的tan (Ap)的积来表示,因此矢量VcO (VcOx、VcOy> VcOz)可以如下表示
VcOx = — z X tan (Ap)
VcOy = OVcOz = O
修正矢量Vc可以是将矢量VcO围绕着z轴旋转投影方位(一 Ay)。从而,修正矢量Vc(Vex、Vcyλ Vcz)可以如下表示
Vcx = — z X tan (Ap) Xcos (Ay)
Vcy = z X tan (Ap) X sin (Ay)
Vcz = 0
从而,对于对P3D铅直投影后得到的点Ppl,如果釆用上述的修正矢量Vc,就能求出点
Pp20修正矢量Vc实质上是(Vcx、Vcy)的二维矢量,因此能够在平行投影的投影面内加以修正。上述的修正矢量Vc是在将γ轴定义为北、X轴定义为东、z轴定义为高度方向、且以北为O度而以东、南、西、北方向的角度来表示投影方位时的值。有必要根据x、y、z以及投影方位的定义而分别采用适当的变换式。图20是坐标变换处理的流程图。这是与图17的步骤S230相当的处理,并且是由移动电话300的地图匹配变换部307 (参照图3)来实行的处理。一旦处理开始,移动电话300就将平行投影参数Ap (投影角度)和Ay (投影方位)输入(步骤S301)。并且基于平行投影参数来生成坐标变换行列(步骤S302)。行列的内容如用图19说明的那样。
然后,移动电话300将当前位置及显示范围内的网络数据输入(步骤S303),并实施当前位置的坐标变换(步骤S304)。另外,针对全网络实施网络数据的坐标变换(步骤S305、S306)。网络的坐标变换既可以在当前位置的坐标变换之前进行,也可以是二者同时进行。一旦这样结束当前位置及网络数据的坐标变换,移动电话300就结束坐标变换处理。利用这个变换结果来进行地图显示(参照图16的步骤S310)。图21是表示导航示例的说明图。表示在从图21 (a)到图21 (C)的路径行进过程中导航显示发生变化的情况。在图21 (a)中,是在实际行进路径上用圆圈围住来显示当前位置。道路及建筑物用平行投影得到的地物数据来绘制。由于实施了先前所述的坐标变换,因此路径以及当前位置都被绘制到恰当的道路上。 从图21 (a)可知,一旦沿着该路径前进,不久就要右拐。图21 (b)显示右拐后的状态。是用与图21 (a)不同的投影方位的地物数据来绘制地图。如用图17说明的那样,地图是根据行进方向来切换的。在这个例子中,当在右拐途中行进方向向右侧变化一定程度以上时,地图就从图21 (a)的方位切换到图21 (b)的方位。通过这样用与行进方向对应的方位的地物数据来显示地图,能够避免地物造成的死角来进行导航。从图21 (b)可知,一旦沿着该路径前进,不久就要进一步右拐。图21 (C)显示路径右拐后的状态。是用与图21 (b)不同的投影方位的地物数据来绘制地图。在这个例子中,当在右拐途中行进方向向右侧变化一定程度以上时,地图就从图21 (b)的方位切换到图21 (c)的方位。图21表示右拐时地图方位发生变化的例子,但方位变化不限于左右拐时。在沿着弯曲的道路前进时,有可能随着行进方向变化而切换方位。另外,也可以在导航途中根据用户的指令来切换地图的方位。以上说明了本发明的实施例。三维地图显示系统不必具备上述实施例的全部功能,也可以是只实现其中的一部分功能。而且也可以在上述内容中追加功能。本发明不限于上述实施例,可以在不脱离其宗旨的范围内采用各种结构。例如,实施例中用硬件构成的部分也可以用软件来构成,也可以是相反。工业上的可利用性
本发明能够用于绘制三维地呈现地物的三维地图。
权利要求
1.一种三维地图绘制系统,用于绘制能三维地呈现地物的三维地图,其特征在于,具备: 地物数据库,该地物数据库中存储作为ニ维绘制数据的地物数据,通过从相对于铅直方向倾斜一定投影角度的倾斜方向进行平行投影来将地物投影在平面上,由此得到所述ニ维绘制数据; 绘制范围输入部,该绘制范围输入部输入对要绘制三维地图的范围的指定; 以及绘制部,该绘制部从所述地物数据库读入与所述指定对应的地物数据来进行绘制。
2.如权利要求I所述的三维地图绘制系统,其特征在干, 所述地物数据是对假想地物进行平行投影后得到的数据,所述假想地物通过将所述地物在高度方向放大比I大的系数倍来得到。
3.如权利要求I或2所述的三维地图绘制系统,其特征在干, 所述地物数据库存储比例尺不同的多个层次的地物数据, 各层次的地物数据是通过进行平行投影的投影方位及所述投影角度相同的平行投影来生成的数据, 所述绘制部利用与所述要绘制的范围对应的层次的地物数据来进行所述绘制。
4.如权利要求I至3中任一项所述的三维地图绘制系统,其特征在干, 所述地物数据库针对同一区域存储投影方位不同的多种地物数据, 所述绘制范围输入部进ー步输入对绘制所述三维地图的方位的指定, 所述绘制部利用与所述方位对应的投影方位的地物数据来进行所述绘制。
5.如权利要求4所述的三维地图绘制系统,其特征在干, 具备存储文字数据的文字数据库,所述文字数据对用于表示所述地物的名称的文字加以指定, 所述文字数据库与所述投影方位不同的多种地物数据对应, 所述文字数据具有用于根据所述投影方向来指定是否将所述文字输出到所述三维地图上的标志, 所述绘制部将所述标志指定的文字输出到所述三维地图上。
6.如权利要求5所述的三维地图绘制系统,其特征在干, 在所述文字数据中用包含高度信息在内的三維信息来指定应将所述文字输出的位置,所述绘制部针对所述指定的位置,在已实施了与生成所述地物数据时的平行投影相同的平行投影的位置上输出所述文字。
7.如权利要求I至6中任一项所述的三维地图绘制系统,其特征在干, 所述地物数据库是切分成由规定的ニ维区域构成的网格后将所述地物数据加以存储, 允许在各网格中存储针对该网格上不存在的地物的地物数据。
8.如权利要求I至7中任一项所述的三维地图绘制系统,其特征在干, 包含在所述地物数据中的道路的数据是考虑到该道路上各地点的高度后进行平行投影的, 具备导航信息输入部,该导航信息输入部将要作为导航信息而在所述三维地图上绘制的路径位置及当前位置中的至少一方用包含高度在内的三維信息所指定的信息来加以输入, 所述绘制部针对所述指定的信息,实施与生成所述地物数据时的平行投影相同的平行投影,来绘制所述路径。
9.一种用于通过计算机来生成地物数据的地物数据生成方法,所述地物数据用于通过三维地图绘制系统来绘制能三维地呈现地物的三维地图,其特征在于, 所述三维地图绘制系统具备 地物数据库,该地物数据库中存储作为二维绘制数据的地物数据,通过从相对于铅直方向倾斜一定投影角度的倾斜方向进行平行投影来将地物投影在平面上,由此得到所述二维绘制数据; 绘制范围输入部,该绘制范围输入部输入对要绘制三维地图的范围的指定; 以及绘制部,该绘制部从所述地物数据库读入与所述指定对应的地物数据来进行绘制, 所述地物数据生成方法包括以下步骤 所述计算机将对生成所述地物数据的对象区域的指定加以输入; 所述计算机从将表示所述地物的三维形状的三维模型加以预先存储的三维地图数据库,将所述对象区域及邻接的规定范围的区域内存在的三维模型输入到存储器内; 所述计算机针对所述存储器内的三维模型,通过从相对于铅直方向倾斜一定投影角度的倾斜方向进行平行投影来将地物投影在平面上,由此生成二维绘制数据并存储到存储器内; 所述计算机从存储在所述存储器内的二维绘制数据中提取出被指定为所述对象区域的区域内的数据,以生成所述地物数据并加以输出。
10.一种通过计算机来绘制能三维地呈现地物的三维地图的三维地图绘制方法,所述计算机具备用于输入外部指令的输入部、用于在规定的数据库中进行存取的数据存取部、以及输出图像的绘制部,其特征在于,所述三维地图绘制方法具备以下步骤 所述输入部将对要绘制三维地图的范围的指定加以输入; 所述存取部对存储作为二维绘制数据的地物数据的地物数据库进行存取,以将与所述指定对应的地物数据读入,所述二维绘制数据通过从相对于铅直方向倾斜一定投影角度的倾斜方向进行平行投影而将地物投影在平面上来得到; 所述绘制部基于所述读入的地物数据来进行绘制。
11.一种用于通过计算机来绘制能三维地呈现地物的三维地图的计算机程序,所述计算机具备用于输入外部指令的输入部、用于在规定的数据库中进行存取的数据存取部、以及输出图像的绘制部,其特征在于,所述计算机程序具备 用于使所述输入部将对要绘制所述三维地图的范围的指定加以输入的程序码; 用于使所述存取部对存储作为二维绘制数据的地物数据的地物数据库进行存取、以将与所述指定对应的地物数据加以读入的程序码,所述二维绘制数据通过从相对于铅直方向倾斜一定投影角度的倾斜方向进行平行投影而将地物投影在平面上来得到; 以及用于使所述绘制部基于所述读入的地物数据来进行绘制的程序码。
全文摘要
本发明提供一种能够保持比例尺的三维地图。预先准备对道路、建筑物等地物加以三维绘制得到的地物数据,并基于该数据来绘制三维地图。地物数据不是通过透视投影,而是用沿着投影方向(PRJ)的平行线将真实的地物(CST2)投影到投影面(PL2)上的方法、即用平行投影来生成。地物数据用将平行投影得到的投影图进行绘制的二维栅格数据或多面体数据来设置。只要对如此准备的地物数据进行绘制,无需进行透视图等负担很大的处理就能绘制出三维地图。平行投影不同于透视投影,能够维持建筑物彼此的位置关系和形状的比例尺,因此能够提供保持比例尺的三维地图。
文档编号G01C21/36GK102870146SQ201080065309
公开日2013年1月9日 申请日期2010年5月14日 优先权日2010年3月11日
发明者岸川喜代成, 阿田昌也, 手岛英治, 入江彻, 富高翼 申请人:株式会社吉奥技术研究所
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1