一种基于浏览器生成地理网络的方法和系统的制作方法

文档序号:9304536阅读:237来源:国知局
一种基于浏览器生成地理网络的方法和系统的制作方法
【技术领域】
[0001] 本发明涉及地理信息技术领域,尤其涉及一种基于浏览器生成地理网络的方法和 系统。
【背景技术】
[0002] 地理网络是GIS(地理信息系统)中一种非常重要的数据形态,基于地理网络可以 进行多种地理分析,如汽车导航中的路径规划、物流车辆的调度优化、电力网络的通路分析 等。
[0003] 目前地理网络生成的主要流程是(1)具有测绘资质的单位或组织对所需的对象进 行测绘;(2)用户购买测绘数据;(3)用户使用GIS软件,处理测绘数据生成地理网络;(4) 将地理网络用于各种分析计算中。
[0004] 但是,目前的技术非常依赖测绘数据以及PC上的GIS专业软件。因此,在很多场 合会导致地理网络生成的不便。比如,对于一些新开发的区域(如新建小区),无法购买到及 时更新的测绘数据;在建筑内部(如展会现场),想提供地理网络的路径分析功能,但无从获 得测绘数据。同时,对购买数据和GIS专业软件的依赖会影响地理网络生成的及时性和灵 活性,同时导致成本也非常高。

【发明内容】

[0005] 为了克服现有技术的上述缺陷,本发明提出一种基于浏览器生成地理网络的方法 和系统。
[0006] 根据本发明的一个方面,提出了一种基于浏览器生成地理网络的方法,该方法包 括以下步骤:A步骤:在浏览器中加载地图数据,并形成参考坐标系;B步骤:在浏览器中形 成与所加载地图同样大小的区域,在区域中绘制地理网络;C步骤:在浏览器中生成地理网 络描述数据,并将该地理网络描述数据传送到服务器;D步骤:服务器接收地理网络描述数 据,生成地理网络数据结构。
[0007] 根据本发明的另一方面,提供了一种基于浏览器生成地理网络的系统,其包括:底 层模块,用于加载地图数据并生成参考坐标系;绘制模块,用于在浏览器中形成与所加载地 图同样大小的区域,在区域中绘制地理网络;封装模块,用于生成地图描述数据,并将所述 地图描述数据发送到服务器;服务器模块,用于接收浏览器发送的地图描述数据并生成地 理网络数据结构。
[0008] 本发明提供一种基于浏览器生成地理网络的方法和系统,用户不需要部署和使用 PC端GIS软件,不依赖测绘数据,完全通过自身的业务数据和操作即可生成地理网络。
【附图说明】
[0009] 图1是浏览器页面示意图;
[0010] 图2是浏览器绘制节点和路径结果示意图;
[0011] 图3为本发明基于浏览器生成地理网络的系统的结构示意图。
[0012] 如图所示,为了能明确实现本发明的实施例的结构,在图中标注了特定的结构和 器件,但这仅为示意需要,并非意图将本发明限定在该特定结构、器件和环境中,根据具体 需要,本领域的普通技术人员可以将这些器件和环境进行调整或者修改,所进行的调整或 者修改仍然包括在后附的权利要求的范围中。
【具体实施方式】
[0013] 下面结合附图和具体实施例对本发明提供的一种基于浏览器生成地理网络的方 法和系统进行详细描述。
[0014] 在以下的描述中,将描述本发明的多个不同的方面,然而,对于本领域内的普通技 术人员而言,可以仅仅利用本发明的一些或者全部结构或者流程来实施本发明。为了解释 的明确性而言,阐述了特定的数目、配置和顺序,但是很明显,在没有这些特定细节的情况 下也可以实施本发明。在其他情况下,为了不混淆本发明,对于一些众所周知的特征将不再 进行详细阐述。
[0015] 根据本发明的一方面,提出的一种基于浏览器生成地理网络的方法,包括如下步 骤:A步骤:在浏览器中加载地图数据,并生成参考坐标系;B步骤:在浏览器中形成与所加 载地图同样大小的区域,在区域中绘制地理网络;C步骤:在浏览器中生成地理网络描述数 据,并将该地理网络描述数据传送到服务器;D步骤:服务器接收地理网络描述数据,生成 地理网络数据结构。
[0016] 所述步骤A中,所述地图数据是符合互联网通用标准的瓦片地图或加载用户自行 上传的图片等数据,如某办公室的楼层平面图。利用此数据形成一个具有坐标参考系的参 考底层,如果是瓦片地图,则采用该瓦片地图自身的坐标系,如果是用户自行上传的图片, 则采用该图片的像素位置标定的坐标系,以图片左上角为坐标零点)。
[0017] 在步骤B中,浏览器调用HTML的DIV标签生成与所加载图片大小相同的区域,在 区域中可以绘制节点。对于支持HTML5的浏览器(如最新版Chrome、Firefox、Safari、IE10 及以上等)使用Canvas的drawCircleO函数绘制节点,对于支持SVG的浏览器(如旧版的 Chrome、Firefox、IE9等)通过添加SVGcircle对象绘制节点,对于支持VML的浏览器(如 IE8及以下等)通过添加VMLoval对象绘制节点。同时,参考所加载地图的坐标,计算出节 点的坐标信息,如图1所示。
[0018] 进一步地,再点击浏览器的时候,需要判断点击坐标是否在节点内。判断方法如 下:对于使用Canvas绘制节点的浏览器,捕捉浏览器触发的click事件,将click事件的坐 标和已经绘制的节点进行比较,如果其距离小于节点绘制的半径,则表示点击在节点内;对 于使用直接在HTML中添加SVG或VML对象的浏览器,在绘制节点时直接在SVG Circle或 VML oval对象上添加对click事件的监听,只有点击节点对象时,才会捕捉到事件,此时表 示鼠标点击发生在节点内。
[0019] 进一步地,如果已经确定点击发生在节点内,系统将弹出属性编辑框如图2所示。 所述属性编辑框以气泡的形式指向该节点,并在气泡中提供若干HTML表单对象供用户填 写该节点的相关属性,比如该节点代表的地理对象名称(某房间、某物品、某大楼等)、代号 等。
[0020] 在定义若干网络节点的基础上,用户可以通过勾连不同的节点,将相互连通的节 点连接起来,也就是绘制路径。绘制路径也就是绘制多段线(有多个节点的折线),步骤如 下:用户在已绘制完的节点1上点击,随后对照参考所加载的地图数据,点击若干中间点, 最后在已绘制完的节点2上点击,这样,节点1和节点2就连接起来,也就是多节点间的一 条路径,如图2所示。
[0021] 路径的绘制和节点的绘制类似,在不同浏览器中使用不同的绘制方法:在支持 HTML5的浏览器中,使用Canvas的strokeO函数绘制;在支持SVG的浏览器中添加SVG polyline对象进行绘制,在支持VML的浏览器中则添加VMLpolyline对象进行绘制。
[0022] 在步骤C中,采用JS0N格式生成地图描述数据,包括节点位置、属性、连通路径、 路径权重等信息。下面是一个地图描述数据的例子:
[0023]【例1】
[0024]
[0025]
[0026] 将地图描述数据通过HTTP协议发送到服务器。
[0027] 在步骤D中,服务器在接收到地理网络描述的数据后,对其进行解析,解析后根据 GIS领域常用的规范或自行定义的标准,生成可供运算的地理网络数据结构。
[0028] 进一步地,服务器根据浏览器中用户的身份将数据保存到服务器的用户数据中并 作为该用户的私有资产。在保存的数据中,包含为客户生成的全局唯一标识符UUID,通过标 识符可以对数据进行唯一区分。
[0029] 由于数据中的所有坐标信息的参考是通用的在线地图或用户自行上传的图片,在 线地图服务的坐标参考是通过加密的合法坐标系统,基于用户自行上传的图片建立的图片 坐标参考是和图片像素关联的,不涉及真实坐标,因此,数据不存在合法性问题。
[0030] 用户可将其自己的地理网络数据结构自行运用在各种地理分析中。比如,对【例1】 中的数据进行,可以得到节点N0DE_1、N0DE_2和路径PATH_1,Path_l的起始点为N0DE_1, 终点为N0DE_2,基于此数据可以构造GIS网络数据进行分析,例如在PostgreSQL数据库中, 可以将数据保存到节点表和路径表中,然后调用pgRouting扩展的shortest_path()方法 求解最短路径。
[0031] 进一步地,服务器包含统一的应用程序接口(API),供用户对已经定义的地理网络 数据进行求解,例如求解网络uuid从N0DE_1到N0DE_2的最短路径,通过以下的HTTP请求 即可获得计算结果:
[0032] http://<host>/network/<uuid>/shortest_path?from=N0DE_l&to=N0DE_2
[0033] 在用户使用系统提供的API进行地理网络的求解时,求解的结果是和所制定的参 考坐标系相关的。具体到某个地理网络数据的时候,可能有以下两种情况:
[0034] (1)定义地理网络的参考是通用电子地图:
[0035] 网络中所有的坐标都是经过加密的电子地图坐标,是符合中国国家测绘局标准 的,因此可以匹配到任何公开发布的电子地图中。
[0036] (2)定义地理网络的参考是用户上传的图片:
[0037] 网络中所有的坐标都是和用户上传的图片像素匹配的,因此使用时,该网络只能 匹配该图片。例如,用户上传了某商场的平面图作为参考:
[0038] 一楼平面图:NETW0RK_UUID1
[0039]二楼平面图:NETW0RK_UUID2
[0040] 在使用网络进行计算后,在将计算结果显示的时候,需要匹配结果的参考对象。比 如NETW0RK_UUID1网络的分析结果,需要绘制在"一楼平面图"之上,NETW0RK_UUID2网络的 分析结果,需要绘制在"二楼平面图"上。
[0041] 图3为
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1