CN113656528A - 地图图层加载方法、装置、设备及存储介质 - Google Patents
地图图层加载方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN113656528A CN113656528A CN202111016945.9A CN202111016945A CN113656528A CN 113656528 A CN113656528 A CN 113656528A CN 202111016945 A CN202111016945 A CN 202111016945A CN 113656528 A CN113656528 A CN 113656528A
- Authority
- CN
- China
- Prior art keywords
- map
- tile
- preset
- service
- information
- Prior art date
- Legal status (The legal status 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 status listed.)
- Pending
Links
- 238000011068 loading method Methods 0.000 title claims abstract description 112
- 238000000034 method Methods 0.000 claims abstract description 30
- 239000003550 marker Substances 0.000 claims description 19
- 230000000007 visual effect Effects 0.000 claims description 15
- 238000009877 rendering Methods 0.000 claims description 11
- 230000006870 function Effects 0.000 claims description 9
- 238000004364 calculation method Methods 0.000 claims description 5
- 238000004590 computer program Methods 0.000 claims 1
- 239000010410 layer Substances 0.000 description 120
- 230000008569 process Effects 0.000 description 12
- 238000010586 diagram Methods 0.000 description 10
- 238000004458 analytical method Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 238000013473 artificial intelligence Methods 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000002085 persistent effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 239000002344 surface layer Substances 0.000 description 1
- 230000001052 transient effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/29—Geographical information databases
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2455—Query execution
- G06F16/24552—Database cache management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
- G06F9/44521—Dynamic linking or loading; Link editing at or after load time, e.g. Java class loading
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/10—Geometric effects
- G06T15/20—Perspective computation
- G06T15/205—Image-based rendering
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
- G06T17/05—Geographic models
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Software Systems (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Geometry (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Computer Graphics (AREA)
- Remote Sensing (AREA)
- Computing Systems (AREA)
- Computational Linguistics (AREA)
- Instructional Devices (AREA)
Abstract
本发明涉及数据处理领域,公开了一种地图图层加载方法、装置、设备及存储介质,该方法包括:当用户登录地理信息系统时,判断是否为首次登陆;若是,则根据业务标记点集中业务标记点的坐标信息和显示视野信息计算业务标记点在各显示层级对应的行信息和列信息,进而从预设的瓦片地图文件中下载业务标记点在各显示层级下的瓦片地图集;将瓦片地图集作为缓存数据集存储至预设的本地图层缓存数据库中;当用户非首次登陆地理信息系统或用户在地理信息系统中进行地图缩放操作时,根据缓存数据集进行对应的地图数据加载。本方法针对业务标记点对应的瓦片地图加载至本地缓存中,在用户进行操作时,直接从本地缓存中加载瓦片地图,提高地图加载的效率。
Description
技术领域
本发明涉及数据处理领域,尤其涉及一种地图图层加载方法、装置、设备及存储介质。
背景技术
地理信息系统(Geographic Information System,GIS),它是一种特定的十分重要的空间信息系统。它是在计算机硬、软件系统支持下,对整个或部分地球表层(包括大气层)空间中的有关地理分布数据进行采集、储存、管理、运算、分析、显示和描述的技术系统。
在实际业务中,GIS应用经常会在地图上标记不同位置的坐标,这些坐标通常都是没有规律地分布,比如,一座城市的医院分布点、学校分布点等。用户在打开页面后,为了更加清晰地了解这些地图坐标位置的详细信息以及周边路况,会缩放地图,这个时候,地图引擎(地图框架)开始根据页面需求的向后端发送新图层的请求,受限于网络等因素,加载的过程有时会很慢,而用户的缩放操作具有连贯性,有时发放大地图好几个层级,这样页面会出现加载过慢,并发请求过多的状况,耗时较长,用户体验不是很好。
发明内容
本发明的主要目的在于解决现有的地图图层加载进程慢的技术问题。
本发明第一方面提供了一种地图图层加载方法,包括:当用户登录所述地理信息系统时,根据预设的中心坐标加载初始图层,并将所述初始图层显示在所述地理信息系统上;判断所述用户是否为首次登陆所述地理信息系统;若是,则获取预设的业务标记点集中业务标记点的坐标信息和所述地理信息系统的显示视野信息;根据所述坐标信息和显示视野信息计算所述业务标记点在各显示层级对应的行信息和列信息;根据所述行信息和所述列信息,从预设的瓦片地图文件中下载所述业务标记点在各显示层级下对应的瓦片地图,得到瓦片地图集;将所述业务标记点集中所有业务标记点对应的瓦片地图集作为缓存数据集存储至预设的本地图层缓存数据库中;当所述用户非首次登陆所述地理信息系统或所述用户在所述地理信息系统中进行地图缩放操作时,根据所述本地图层缓存数据库中的缓存数据集进行对应的地图数据加载。
可选的,在本发明第一方面的第一种实现方式中,所述根据所述坐标信息和显示视野信息计算所述业务标记点在各显示层级对应的行信息和列信息包括:获取所述各显示层级对应的每像素实际单位大小和预设的瓦片大小;根据所述每像素实际单位大小和所述瓦片大小,计算各显示层级对应的每个瓦片代表的实际长度;根据所述显示视野信息计算视野原点坐标,并根据所述坐标信息和所述视野原点坐标计算坐标距离,其中,所述坐标距离分别包括行距离和列距离;将所述行距离和所述列距离分别除以所述实际长度并向下取整,得到对应的行信息和列信息。
可选的,在本发明第一方面的第二种实现方式中,所述根据所述行信息和所述列信息,从预设的瓦片地图文件中下载所述业务标记点在各显示层级下对应的瓦片地图,得到瓦片地图集包括:获取地图服务提供商提供的瓦片地图的待填充定位符;根据所述行信息和所述列信息填充所述待填充定位符中的参数,得到对应的统一资源定位符;根据所有所述统一资源定位符从所述地图服务提供商的瓦片地图文件中获取所述业务标记点在各显示层级下对应的瓦片地图,得到瓦片地图集。
可选的,在本发明第一方面的第三种实现方式中,在所述根据所有所述统一资源定位符从所述地图服务提供商的瓦片地图文件中获取所述业务标记点在各显示层级下对应的瓦片地图,得到瓦片地图集之后,还包括:根据所述瓦片地图文件计算各个瓦片地图的三维模型坐标;将所述瓦片地图文件中各瓦片地图的图片转化为纹理图片,并计算所述纹理图片的纹理坐标;根据各个瓦片地图的三维模型坐标、纹理图片和纹理坐标,调用预设的渲染函数对各个瓦片地图进行渲染,得到渲染后的瓦片地图。
可选的,在本发明第一方面的第四种实现方式中,从预设的瓦片地图文件中下载所述业务标记点在各显示层级下对应的瓦片地图,得到瓦片地图集之前,还包括:获取所述业务标记点集中各标记点的标记点类型;根据预设的优先级分配规则和所述标记点类型为所述业务标记点中的各业务标记点分配存储优先级。
可选的,在本发明第一方面的第五种实现方式中,在所述根据预设的优先级分配规则和所述标记点类型为所述业务标记点中的各业务标记点分配存储优先级之后,还包括:使用预设大小的线程池下载预设数量的瓦片地图,并记录下载的数据量、下载时间、CPU占用率和内存占用率;根据所述数据量、下载时间、CPU占用率和内存占用率计算下载压力;根据所述下载压力和预设的压力阈值,调整所述线程池的大小以及下载所述瓦片地图的下载顺序,其中,所述下载顺序根据所述存储优先级进行调整。
可选的,在本发明第一方面的第六种实现方式中,所述当所述用户非首次登陆所述地理信息系统或所述用户在所述地理信息系统中进行地图缩放操作时,根据所述本地图层缓存数据库中的缓存数据集进行对应的地图数据加载包括:
当所述用户非首次登陆所述地理信息系统或所述用户在所述地理信息系统中进行地图缩放操作时,获取所述缩放操作对应的缩放区域;判断所述缩放区域中是否包含所述业务标记点集中业务标记点;若是,则根据所述缩放区域中的业务标记点,从所述本地图层缓存数据库中的缓存数据集中调取对应的瓦片地图进行地图数据加载;若否,则根据所述缩放区域从预设的瓦片地图文件中下载对应的瓦片地图进行地图数据加载。
本发明第二方面提供了一种地图图层加载装置,包括:登录模块,用于当用户登录所述地理信息系统时,根据预设的中心坐标加载初始图层,并将所述初始图层显示在所述地理信息系统上;判断模块,用于判断所述用户是否为首次登陆所述地理信息系统;获取模块,用于当所述用户是否为首次登陆所述地理信息系统时,获取预设的业务标记点集中业务标记点的坐标信息和所述地理信息系统的显示视野信息;计算模块,用于根据所述坐标信息和显示视野信息计算所述业务标记点在各显示层级对应的行信息和列信息;下载模块,用于根据所述行信息和所述列信息,从预设的瓦片地图文件中下载所述业务标记点在各显示层级下对应的瓦片地图,得到瓦片地图集;本地存储模块,用于将所述业务标记点集中所有业务标记点对应的瓦片地图集作为缓存数据集存储至预设的本地图层缓存数据库中;加载模块,用于当所述用户非首次登陆所述地理信息系统或所述用户在所述地理信息系统中进行地图缩放操作时,根据所述本地图层缓存数据库中的缓存数据集进行对应的地图数据加载。
可选的,在本发明第二方面的第一种实现方式中,所述计算模块具体用于:获取所述各显示层级对应的每像素实际单位大小和预设的瓦片大小;根据所述每像素实际单位大小和所述瓦片大小,计算各显示层级对应的每个瓦片代表的实际长度;根据所述显示视野信息计算视野原点坐标,并根据所述坐标信息和所述视野原点坐标计算坐标距离,其中,所述坐标距离分别包括行距离和列距离;将所述行距离和所述列距离分别除以所述实际长度并向下取整,得到对应的行信息和列信息。
可选的,在本发明第二方面的第二种实现方式中,所述下载模块具体用于:所述下载模块具体用于:获取地图服务提供商提供的瓦片地图的待填充定位符;根据所述行信息和所述列信息填充所述待填充定位符中的参数,得到对应的统一资源定位符;根据所有所述统一资源定位符从所述地图服务提供商的瓦片地图文件中获取所述业务标记点在各显示层级下对应的瓦片地图,得到瓦片地图集。
可选的,在本发明第二方面的第三种实现方式中,所述地图图层加载装置还包括渲染模块,所述渲染模块具体用于:根据所述瓦片地图文件计算各个瓦片地图的三维模型坐标;将所述瓦片地图文件中各瓦片地图的图片转化为纹理图片,并计算所述纹理图片的纹理坐标;根据各个瓦片地图的三维模型坐标、纹理图片和纹理坐标,调用预设的渲染函数对各个瓦片地图进行渲染,得到渲染后的瓦片地图。
可选的,在本发明第二方面的第四种实现方式中,所述地图图层加载装置还包括优先级分配模块,所述优先级分配模块具体用于:获取所述业务标记点集中各标记点的标记点类型;根据预设的优先级分配规则和所述标记点类型为所述业务标记点中的各业务标记点分配存储优先级。
可选的,在本发明第二方面的第五种实现方式中,所述地图图层加载装置还包括排序模块,所述排序模块具体用于:使用预设大小的线程池下载预设数量的瓦片地图,并记录下载的数据量、下载时间、CPU占用率和内存占用率;根据所述数据量、下载时间、CPU占用率和内存占用率计算下载压力;根据所述下载压力和预设的压力阈值,调整所述线程池的大小以及下载所述瓦片地图的下载顺序,其中,所述下载顺序根据所述存储优先级进行调整。
可选的,在本发明第二方面的第六种实现方式中,所述加载模块具体用于;当所述用户非首次登陆所述地理信息系统或所述用户在所述地理信息系统中进行地图缩放操作时,获取所述缩放操作对应的缩放区域;判断所述缩放区域中是否包含所述业务标记点集中业务标记点;若是,则根据所述缩放区域中的业务标记点,从所述本地图层缓存数据库中的缓存数据集中调取对应的瓦片地图进行地图数据加载;若否,则根据所述缩放区域从预设的瓦片地图文件中下载对应的瓦片地图进行地图数据加载。
本发明第三方面提供了一种地图图层加载设备,包括:存储器和至少一个处理器,所述存储器中存储有指令,所述存储器和所述至少一个处理器通过线路互连;所述至少一个处理器调用所述存储器中的所述指令,以使得所述地图图层加载设备执行上述的地图图层加载方法的步骤。
本发明的第四方面提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述的地图图层加载方法的步骤。
本发明的技术方案中,当用户登录地理信息系统时,根据预设的中心坐标加载初始图层,并将初始图层显示在地理信息系统上;判断用户是否为首次登陆地理信息系统;若是,则获取预设的业务标记点集中业务标记点的坐标信息、地图显示比例尺和地理信息系统的显示视野信息;根据坐标信息和地图显示比例尺计算业务标记点在显示视野信息下各显示层级对应的行信息和列信息;根据行信息和列信息,从预设的瓦片地图文件中检索业务标记点在层级下对应的瓦片地图,得到瓦片地图集;将业务标记点集中所有业务标记点对应的瓦片地图集作为缓存数据集存储至预设的本地图层缓存数据库中;当用户非首次登陆地理信息系统或用户在地理信息系统中进行地图缩放操作时,根据本地图层缓存数据库中的缓存数据集进行对应的地图图层加载。本方法针对用户需求量较大的业务标记点对应的瓦片地图预先加载至本地缓存中,在用户对地图进行操作时,直接根据本地缓存中的瓦片地图进行加载,提高地图加载的效率。
附图说明
图1为本发明实施例中地图图层加载方法的第一个实施例示意图;
图2为本发明实施例中地图图层加载方法的第二个实施例示意图;
图3为本发明实施例中地图图层加载方法的第三个实施例示意图;
图4为本发明实施例中地图图层加载方法的第四个实施例示意图;
图5为本发明实施例中地图图层加载方法的第五个实施例示意图;
图6为本发明实施例中地图图层加载装置的一个实施例示意图;
图7为本发明实施例中地图图层加载装置的另一个实施例示意图;
图8为本发明实施例中地图图层加载设备的一个实施例示意图。
具体实施方式
本发明的技术方案中,当用户登录地理信息系统时,根据预设的中心坐标加载初始图层,并将初始图层显示在地理信息系统上;判断用户是否为首次登陆地理信息系统;若是,则获取预设的业务标记点集中业务标记点的坐标信息、地图显示比例尺和地理信息系统的显示视野信息;根据坐标信息和地图显示比例尺计算业务标记点在显示视野信息下各显示层级对应的行信息和列信息;根据行信息和列信息,从预设的瓦片地图文件中检索业务标记点在层级下对应的瓦片地图,得到瓦片地图集;将业务标记点集中所有业务标记点对应的瓦片地图集作为缓存数据集存储至预设的本地图层缓存数据库中;当用户非首次登陆地理信息系统或用户在地理信息系统中进行地图缩放操作时,根据本地图层缓存数据库中的缓存数据集进行对应的地图图层加载。本方法针对用户需求量较大的业务标记点对应的瓦片地图预先加载至本地缓存中,在用户对地图进行操作时,直接根据本地缓存中的瓦片地图进行加载,提高地图加载的效率。
本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。此外,术语“包括”或“具有”及其任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
为便于理解,下面对本发明实施例的具体流程进行描述,请参阅图1,本发明实施例中地图图层加载方法的第一个实施例包括:
101、当用户登录地理信息系统时,根据预设的中心坐标加载初始图层,并将初始图层显示在地理信息系统上;
可以理解的是,本发明的执行主体可以为地图图层加载装置,还可以是终端或者服务器,具体此处不做限定。本发明实施例以服务器为执行主体为例进行说明。服务器可以是独立的服务器,也可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、内容分发网络(Content Delivery Network,CDN)、以及大数据和人工智能平台等基础云计算服务的云服务器。
在本实施例中,地理信息系统(Geographic Information System或Geo-Information system,GIS)是一种特定的十分重要的空间信息系统。它是在计算机硬、软件系统支持下,对整个或部分地球表层(包括大气层)空间中的有关地理分布数据进行采集、储存、管理、运算、分析、显示和描述的技术系统,用户可以通过地理信息系统进行地理信息进行查看。当用户有进行地理信息查看的需求时,打开地理信息系统并进行账号登录,登录完成后,地理信息系统通过预设的中心坐标进行初始图层的加载,同时并行开始加载业务坐标点的坐标信息,在实际应用中,GIS应用经常会在地图上标记不同位置的坐标,这些坐标通常都是没有规律地分布,比如,一座城市的医院分布点、学校分布点等,这些点即为业务标记点。
102、判断用户是否为首次登陆地理信息系统;
在本实施例中,当用户为首次登陆地理信息系统时,通过预加载的方式,将业务标记点对应的瓦片地图加载到本地缓存中,当用户不是首次登陆地图直接从先前首次登陆加载到本地缓存的瓦片地图进行地图加载,不再需要从地图服务提供商处下载对应的瓦片地图,提高地理信息系统的地图加载速度。
103、若是,则获取预设的业务标记点集中业务标记点的坐标信息和地理信息系统的显示视野信息;
在本实施例中,在实际应用中,GIS应用经常会在地图上标记不同位置的坐标,这些坐标通常都是没有规律地分布,比如,一座城市的医院分布点、学校分布点等,这些点即为业务标记点,业务标记点对应的坐标主要为经纬度坐标,也可以是平面坐标。在本实施例中,显示视野信息主要包括用户屏幕的视野分辨率,用户屏幕上一像素代表的实际距离等信息。
104、根据坐标信息和显示视野信息计算业务标记点在各显示层级对应的行信息和列信息;
在本实施例中,显示视野信息包括原点是(x0,y0),地图的瓦片大小是tileSize,地图屏幕上1像素代表的实际距离是resolution,业务标记点的坐标信息为(x,y),则所在的瓦片的行列号的公式是:
col=floor((x0-x)/(tileSize*resolution))
row=floor((y0-y)/(tileSize*resolution))
其中,col为行信息,row为列信息,floor()为向下取整函数,两个公式的含义是算出一个瓦片所包含的实际长度是多少LtileSize,然后再算出此时屏幕上的地理坐标点离瓦片切图的起始点间的实际距离LrealSize,然后用实际距离除以一个瓦片的实际长度,即可得此时的瓦片行列号,在不同显示层级下,显示视野信息中的原点与业务标记点的距离不同,以及地图屏幕上1像素代表的实际距离也将不同,进而可以计算得到不同显示层级下对应的行信息和列信息。
105、根据行信息和列信息,从预设的瓦片地图文件中下载业务标记点在各显示层级下对应的瓦片地图,得到瓦片地图集;
在实际应用中,根据行信息、列信息和对应的显示层级,即可确定对应的瓦片地图,在本实施例中,根据不同显示层级下的行信息和列信息,从地图服务提供商处获取对应的瓦片地图,对于提供地图服务的服务商而言,其必然有下载瓦片地图数据的接口,通过该接口可以下载该瓦片地图。一般而言,可以通过统一资源定位符(Universal ResourceLocator,简称为URL)的方式来获取瓦片地图,例如,可以首先获取电子地图服务提供商提供瓦片地图的URL,然后根据需要下载的瓦片地图填充URL中的参数,形成完整的URL,例如,可以填充的参数可以至少包括电子地图的类型、经纬度、区域跨度、缩放等级,优选地,还可以包括标签语言。在得到该完整的URL之后,就可以根据该完整的URL下载需要下载的瓦片地图。对于该URL的获取,可以通过网络抓包工具对与电子地图服务商进行的交互进行抓包,通过对抓取的数据包的分析就可以得到该URL。当然,对于某些开放端口的电子地图的服务提供商,其可能直接提供了可以下载瓦片地图的URL。
在本实施例中,通过多线程的方式同时下载瓦片地图,使用多线程加载不同业务点图层数据,速度更快,不影响页面的其它操作。
106、将业务标记点集中所有业务标记点对应的瓦片地图集作为缓存数据集存储至预设的本地图层缓存数据库中;
在本实施例中,将瓦片地图集中的瓦片地图存放在本地图层缓存数据库中,每个显示均对应一个目录,将该显示层级下的瓦片地图的列信息除以M,商数为该显示层级目录下二级目录名,余数为该显示层级目录下的三级目录名,将该显示层级下的瓦片地图的行信息除以M,商数为该显示层级目录下的四级目录名,余数为该瓦片地图的图片文件的文件名,其中,M为正整数,M与显示层级相对应。通过该实施方式,可以通过设置M的值来确定目录的级数,例如,对于显示层级1,其目录下的图片数量要远远小于显示层级10目录下的图片数量,那么对于显示层级为1时,相除的结果商数为0,即其二级目录名为0,需要说明的是,可以以0作为二级目录名,也可以将二级目录名省略,不再设置二级目录,而对于显示层级10可能就有必要设置二级目录,甚至设置三级目录。对于从哪些显示层级开始需要设置二级目录等可以通过调整M值来进行控制。当显示层级最大为20时,M值取值为1024是比较优的。将瓦片地图根据上述多目录的方式,存储在本地中。
107、当用户非首次登陆地理信息系统或用户在地理信息系统中进行地图缩放操作时,根据本地图层缓存数据库中的缓存数据集进行对应的地图数据加载。
在本实施例中,当所述用户非首次登陆所述地理信息系统或所述用户在所述地理信息系统中进行地图缩放操作时,说明业务标记点对应的瓦片地图已经存储在本地图层缓存数据库中,获取所述缩放操作对应的缩放区域;判断所述缩放区域中是否包含所述业务标记点集中业务标记点;若是,则根据所述缩放区域中的业务标记点,从所述本地图层缓存数据库中的缓存数据集中调取对应的瓦片地图进行地图数据加载;若否,则进行正常的地图加载,根据所述缩放区域从预设的瓦片地图文件中下载对应的瓦片地图进行地图数据加载。
在本实施例中,当用户登录地理信息系统时,根据预设的中心坐标加载初始图层,并将初始图层显示在地理信息系统上;判断用户是否为首次登陆地理信息系统;若是,则获取预设的业务标记点集中业务标记点的坐标信息、地图显示比例尺和地理信息系统的显示视野信息;根据坐标信息和地图显示比例尺计算业务标记点在显示视野信息下各显示层级对应的行信息和列信息;根据行信息和列信息,从预设的瓦片地图文件中检索业务标记点在层级下对应的瓦片地图,得到瓦片地图集;将业务标记点集中所有业务标记点对应的瓦片地图集作为缓存数据集存储至预设的本地图层缓存数据库中;当用户非首次登陆地理信息系统或用户在地理信息系统中进行地图缩放操作时,根据本地图层缓存数据库中的缓存数据集进行对应的地图图层加载。本方法针对用户需求量较大的业务标记点对应的瓦片地图预先加载至本地缓存中,在用户对地图进行操作时,直接根据本地缓存中的瓦片地图进行加载,提高地图加载的效率。
请参阅图2,本发明实施例中地图图层加载方法的第二个实施例包括:
201、当用户登录地理信息系统时,根据预设的中心坐标加载初始图层,并将初始图层显示在地理信息系统上;
202、判断用户是否为首次登陆地理信息系统;
203、若是,则获取预设的业务标记点集中业务标记点的坐标信息和地理信息系统的显示视野信息;
204、获取各显示层级对应的每像素实际单位大小和预设的瓦片大小;
在本实施例中,不同显示层级有对应的地图比例尺,如果当前显示层级的地图比例尺为1:125000000,则代表图上1米等于实地125000000米;根据米和像素间的换算公式:1英寸=0.0254米=96像素;1像素=0.0254/96米,则根据1:125000000比例尺,图上1像素代表实地距离是125000000*0.0254/96=33072.9166666667米。预设的瓦片大小一般为256*256。
205、根据每像素实际单位大小和瓦片大小,计算各显示层级对应的每个瓦片代表的实际长度;
206、根据显示视野信息计算视野原点坐标,并根据坐标信息和视野原点坐标计算坐标距离,其中,坐标距离分别包括行距离和列距离;
207、将行距离和列距离分别除以实际长度并向下取整,得到对应的行信息和列信息;
在本实施例中,通过每像素实际单位大小和所述瓦片大小可以计算各显示层级对应的每个瓦片代表的实际长度,例如预设的瓦片大小一般为256*256,图上1像素代表实地距离33072.9166666667m,则计算的每瓦片代表的实际长度为8466666.6667m。
本实施例中,在得到上述信息后,通过行信息和列信息的计算公式,即可计算出行信息和列信息。
208、根据行信息和列信息,从预设的瓦片地图文件中下载业务标记点在各显示层级下对应的瓦片地图,得到瓦片地图集;
209、将业务标记点集中所有业务标记点对应的瓦片地图集作为缓存数据集存储至预设的本地图层缓存数据库中;
210、当用户非首次登陆地理信息系统或用户在地理信息系统中进行地图缩放操作时,根据本地图层缓存数据库中的缓存数据集进行对应的地图数据加载。
本实施例在上一实施例的基础上,详细描述了根据所述坐标信息和显示视野信息计算所述业务标记点在各显示层级对应的行信息和列信息的过程,通过获取所述各显示层级对应的每像素实际单位大小和预设的瓦片大小;根据所述每像素实际单位大小和所述瓦片大小,计算各显示层级对应的每个瓦片代表的实际长度;根据所述显示视野信息计算视野原点坐标,并根据所述坐标信息和所述视野原点坐标计算坐标距离,其中,所述坐标距离分别包括行距离和列距离;将所述行距离和所述列距离分别除以所述实际长度并向下取整,得到对应的行信息和列信息。本实施例通过像素和屏幕的显示视野信息,能够确定当前地图对应的行信息和列信息,进而正确下载对应的瓦片地图。
请参阅图3,本发明实施例中地图图层加载方法的第三个实施例包括:
301、当用户登录地理信息系统时,根据预设的中心坐标加载初始图层,并将初始图层显示在地理信息系统上;
302、判断用户是否为首次登陆地理信息系统;
303、若是,则获取预设的业务标记点集中业务标记点的坐标信息和地理信息系统的显示视野信息;
304、根据坐标信息和显示视野信息计算业务标记点在各显示层级对应的行信息和列信息;
305、获取地图服务提供商提供的瓦片地图的待填充定位符;
306、根据行信息和列信息填充待填充定位符中的参数,得到对应的统一资源定位符;
307、根据所有统一资源定位符从地图服务提供商的瓦片地图文件中获取业务标记点在各显示层级下对应的瓦片地图,得到瓦片地图集;
在本实施例中,对于提供地图服务的服务商而言,其必然有下载瓦片地图数据的接口,通过该接口可以下载该瓦片地图。一般而言,可以通过统一资源定位符(UniversalResource Locator,简称为URL)的方式来获取瓦片地图,例如,可以首先获取电子地图服务提供商提供瓦片地图的URL,然后根据需要下载的瓦片地图填充URL中的参数,形成完整的URL,例如,可以填充的参数可以至少包括电子地图的类型、经纬度、区域跨度、缩放等级,优选地,还可以包括标签语言。在得到该完整的URL之后,就可以根据该完整的URL下载需要下载的瓦片地图。对于该URL的获取,可以通过网络抓包工具对与电子地图服务商进行的交互进行抓包,通过对抓取的数据包的分析就可以得到该URL。当然,对于某些开放端口的电子地图的服务提供商,其可能直接提供了可以下载瓦片地图的URL。
308、根据经度坐标和纬度坐标计算目标资源获取机构与各资源获取机构之间的直线距离;
309、根据瓦片地图文件计算各个瓦片地图的三维模型坐标;
310、将瓦片地图文件中各瓦片地图的图片转化为纹理图片,并计算纹理图片的纹理坐标;
311、根据各个瓦片地图的三维模型坐标、纹理图片和纹理坐标,调用预设的渲染函数对各个瓦片地图进行渲染,得到渲染后的瓦片地图;
在实际应用中,瓦片地图文件为一种针对Unicode的可变宽度字符编码,瓦片地图创建装置通过对瓦片地图文件进行解析可以得到瓦片地图文件的数据结构,之后根据上述瓦片地图文件计算各个瓦片的3D模型坐标。瓦片地图创建装置根据瓦片地图文件中获取到图片路径,根据图片路径获取各个瓦片的图片后利用OpenGL接口生成与图片对应的纹理图片,在调用上述的渲染函数分别对上述各个瓦片进行渲染时,将投影设置为正交投影,将混合方式设置为glBlendFunc,根据瓦片地图各层中各个瓦片的3D模型坐标、纹理图片以及纹理图片的坐标,按照层从小到大、瓦片从小到大的顺序逐一进行渲染,最终便可得到一张包含上述各个瓦片的完整的瓦片地图。
312、将业务标记点集中所有业务标记点对应的瓦片地图集作为缓存数据集存储至预设的本地图层缓存数据库中;
313、当用户非首次登陆地理信息系统或用户在地理信息系统中进行地图缩放操作时,根据本地图层缓存数据库中的缓存数据集进行对应的地图数据加载。
本实施例在前实施例的基础上,详细描述了根据所述行信息和所述列信息,从预设的瓦片地图文件中下载所述业务标记点在各显示层级下对应的瓦片地图,得到瓦片地图集的过程,通过获取地图服务提供商提供的瓦片地图的待填充定位符;根据所述行信息和所述列信息填充所述待填充定位符中的参数,得到对应的统一资源定位符;根据所有所述统一资源定位符从所述地图服务提供商的瓦片地图文件中获取所述业务标记点在各显示层级下对应的瓦片地图,得到瓦片地图集。并且增加了图片渲染的过程,使得瓦片地图在地里信息系统中完整显示。
请参阅图4,本发明实施例中地图图层加载方法的第四个实施例包括:
401、当用户登录地理信息系统时,根据预设的中心坐标加载初始图层,并将初始图层显示在地理信息系统上;
402、判断用户是否为首次登陆地理信息系统;
403、若是,则获取预设的业务标记点集中业务标记点的坐标信息和地理信息系统的显示视野信息;
404、根据坐标信息和显示视野信息计算业务标记点在各显示层级对应的行信息和列信息;
405、获取业务标记点集中各标记点的标记点类型;
406、根据预设的优先级分配规则和标记点类型为业务标记点中的各业务标记点分配存储优先级;
在本实施例中,由于业务坐标点有若干个,所以这里使用Web Workers技术进行多线程请求图层信息,考虑到用户进入页面后可能立刻开始放大业务点坐标位置,利用webworker创建请求时,先根据业务点权重进行排序,例如,在邻近区域中存在的多个业务标记点,由于这些业务标记点距离较近,所以它们的下级图层可能会有重叠部分,故优先级高点,这样可以避免多次向后台发送请求,通过设置优先级,在多线程下载对应的瓦片地图时,优先下载优先级较高的业务标记点对应的瓦片地图,可以避免多次向地图服务提供商发送请求。
407、使用预设大小的线程池下载预设数量的瓦片地图,并记录下载的数据量、下载时间、CPU占用率和内存占用率;
在本实施例中,由于初次下载时不清楚用户进入地理信息系统的终端设备可用于下载的性能,即使是同样硬件的设备,可能由于后台工作的软件占用的性能不同而造成可用于下载的性能存在差异,因此,本实施例通过两个对CPU和内存影响最大的预设参数来进行首次的下载,以获取关键信息,即下载的数据量、耗时、下载时的CPU占用率及内存占用率,以便于获取该终端设备当前可用于下载的性能,在本实施例中,记录下载的数据量、耗时、下载时的CPU占用率及内存占用率的文件是实时更新的,尽可能的保证记录下载细节详细且完整,便于后续的处理。
408、根据数据量、下载时间、CPU占用率和内存占用率计算下载压力;
409、根据下载压力和预设的压力阈值,调整线程池的大小以及下载瓦片地图的下载顺序,其中,下载顺序根据存储优先级进行调整;
在本实施例中,此需要根据下载的数据量及耗时估算下载该数据的运算量,而后再通过耗时、下载时的CPU及内存占用率得到设备当前可用于下载的性能,将下载压力量化为数据进行计算,并将其与目标下载压力即预设阈值进行比较,当高于预设阈值时,调低下载压力,当低于预设阈值时,调高下载压力,通常情况下第一次下载应当显著低于预设阈值,调整后的下载参数即线程池大小和瓦片地图数量进行下载后的下载压力,通常也并不是很贴合预设阈值,然而第二次下载时依然可以通过检测关键信息调整下载参数使得下载压力贴合预设阈值,通常在第三次下载时,下载参数已经较为稳定,而当后台任务再次占用性能时。
在本实施例中,根据下载压力和预设的压力阈值的关系,调整多线程中瓦片地图的下载顺序,当下载压力小于压力阈值时,通过可以将优先级较低的瓦片地图与优先级较高的瓦片地图同时进行下载,当下载压力大于压力阈值时,优先下载优先级较高的瓦片地图。
410、根据行信息和列信息,从预设的瓦片地图文件中按照存储优先级下载业务标记点在各显示层级下对应的瓦片地图,得到瓦片地图集;
411、将业务标记点集中所有业务标记点对应的瓦片地图集作为缓存数据集存储至预设的本地图层缓存数据库中;
412、当用户非首次登陆地理信息系统或用户在地理信息系统中进行地图缩放操作时,根据本地图层缓存数据库中的缓存数据集进行对应的地图数据加载。
本实施例在前实施例的基础上,增加了根据存储优先级下载瓦片地图的过程,通过使用预设大小的线程池下载预设数量的瓦片地图,并记录下载的数据量、下载时间、CPU占用率和内存占用率;根据所述数据量、下载时间、CPU占用率和内存占用率计算下载压力;根据所述下载压力和预设的压力阈值,调整所述线程池的大小以及下载所述瓦片地图的下载顺序,其中,所述下载顺序根据所述存储优先级进行调整。通过设置优先级,能够在计算机资源压力大的情况下,优先下载重要的瓦片地图,避免程序错误。
请参阅图5,本发明实施例中地图图层加载方法的第五个实施例包括:
501、当用户登录地理信息系统时,根据预设的中心坐标加载初始图层,并将初始图层显示在地理信息系统上;
502、判断用户是否为首次登陆地理信息系统;
503、若是,则获取预设的业务标记点集中业务标记点的坐标信息和地理信息系统的显示视野信息;
504、根据坐标信息和显示视野信息计算业务标记点在各显示层级对应的行信息和列信息;
505、根据行信息和列信息,从预设的瓦片地图文件中下载业务标记点在各显示层级下对应的瓦片地图,得到瓦片地图集;
506、将业务标记点集中所有业务标记点对应的瓦片地图集作为缓存数据集存储至预设的本地图层缓存数据库中;
507、当用户非首次登陆地理信息系统或用户在地理信息系统中进行地图缩放操作时,获取缩放操作对应的缩放区域;
508、判断缩放区域中是否包含业务标记点集中业务标记点;
509、若是,则根据缩放区域中的业务标记点,从本地图层缓存数据库中的缓存数据集中调取对应的瓦片地图进行地图数据加载;
510、若否,则根据缩放区域从预设的瓦片地图文件中下载对应的瓦片地图进行地图数据加载。
在本实施例中,用户进行地图缩放或者进行地图位置的移动时,需要进行地图数据的加载,在缩放和地图移动的过程中,判断缩放的区域或者地图移动的区域是否有业务标记点,对于存在业务标记点的区域直接从上述首次登陆时存储在本地图层缓存数据库中的瓦片地图进行地图数据的加载,从本地直接调取瓦片地图,加载速度快,对于未存在业务标记点的区域,则需要进行后台下载。
本实施例在前实施例的基础上,详细描述了当所述用户非首次登陆所述地理信息系统或所述用户在所述地理信息系统中进行地图缩放操作时,根据所述本地图层缓存数据库中的缓存数据集进行对应的地图数据加载的过程,当所述用户非首次登陆所述地理信息系统或所述用户在所述地理信息系统中进行地图缩放操作时,获取所述缩放操作对应的缩放区域;判断所述缩放区域中是否包含所述业务标记点集中业务标记点;若是,则根据所述缩放区域中的业务标记点,从所述本地图层缓存数据库中的缓存数据集中调取对应的瓦片地图进行地图数据加载;若否,则根据所述缩放区域从预设的瓦片地图文件中下载对应的瓦片地图进行地图数据加载。
上面对本发明实施例中地图图层加载方法进行了描述,下面对本发明实施例中地图图层加载装置进行描述,请参阅图6,本发明实施例中地图图层加载装置一个实施例包括:
登录模块601,用于当用户登录所述地理信息系统时,根据预设的中心坐标加载初始图层,并将所述初始图层显示在所述地理信息系统上;
判断模块602,用于判断所述用户是否为首次登陆所述地理信息系统;
获取模块603,用于当所述用户是否为首次登陆所述地理信息系统时,获取预设的业务标记点集中业务标记点的坐标信息和所述地理信息系统的显示视野信息;
计算模块604,用于根据所述坐标信息和显示视野信息计算所述业务标记点在各显示层级对应的行信息和列信息;
下载模块605,用于根据所述行信息和所述列信息,从预设的瓦片地图文件中下载所述业务标记点在各显示层级下对应的瓦片地图,得到瓦片地图集;
本地存储模块606,用于将所述业务标记点集中所有业务标记点对应的瓦片地图集作为缓存数据集存储至预设的本地图层缓存数据库中;
加载模块607,用于当所述用户非首次登陆所述地理信息系统或所述用户在所述地理信息系统中进行地图缩放操作时,根据所述本地图层缓存数据库中的缓存数据集进行对应的地图数据加载。
本发明实施例中,所述地图图层加载装置运行上述地图图层加载方法,所述地图图层加载装置在用户登录地理信息系统时,根据预设的中心坐标加载初始图层,并将初始图层显示在地理信息系统上;判断用户是否为首次登陆地理信息系统;若是,则获取预设的业务标记点集中业务标记点的坐标信息、地图显示比例尺和地理信息系统的显示视野信息;根据坐标信息和地图显示比例尺计算业务标记点在显示视野信息下各显示层级对应的行信息和列信息;根据行信息和列信息,从预设的瓦片地图文件中检索业务标记点在层级下对应的瓦片地图,得到瓦片地图集;将业务标记点集中所有业务标记点对应的瓦片地图集作为缓存数据集存储至预设的本地图层缓存数据库中;当用户非首次登陆地理信息系统或用户在地理信息系统中进行地图缩放操作时,根据本地图层缓存数据库中的缓存数据集进行对应的地图图层加载。本方法针对用户需求量较大的业务标记点对应的瓦片地图预先加载至本地缓存中,在用户对地图进行操作时,直接根据本地缓存中的瓦片地图进行加载,提高地图加载的效率。
请参阅图7,本发明实施例中地图图层加载装置的第二个实施例包括:
登录模块601,用于当用户登录所述地理信息系统时,根据预设的中心坐标加载初始图层,并将所述初始图层显示在所述地理信息系统上;
判断模块602,用于判断所述用户是否为首次登陆所述地理信息系统;
获取模块603,用于当所述用户是否为首次登陆所述地理信息系统时,获取预设的业务标记点集中业务标记点的坐标信息和所述地理信息系统的显示视野信息;
计算模块604,用于根据所述坐标信息和显示视野信息计算所述业务标记点在各显示层级对应的行信息和列信息;
下载模块605,用于根据所述行信息和所述列信息,从预设的瓦片地图文件中下载所述业务标记点在各显示层级下对应的瓦片地图,得到瓦片地图集;
本地存储模块606,用于将所述业务标记点集中所有业务标记点对应的瓦片地图集作为缓存数据集存储至预设的本地图层缓存数据库中;
加载模块607,用于当所述用户非首次登陆所述地理信息系统或所述用户在所述地理信息系统中进行地图缩放操作时,根据所述本地图层缓存数据库中的缓存数据集进行对应的地图数据加载。
在本实施例中,所述计算模块604具体用于:获取所述各显示层级对应的每像素实际单位大小和预设的瓦片大小;根据所述每像素实际单位大小和所述瓦片大小,计算各显示层级对应的每个瓦片代表的实际长度;根据所述显示视野信息计算视野原点坐标,并根据所述坐标信息和所述视野原点坐标计算坐标距离,其中,所述坐标距离分别包括行距离和列距离;将所述行距离和所述列距离分别除以所述实际长度并向下取整,得到对应的行信息和列信息。
在本实施例中,所述下载模块605具体用于:所述下载模块具体用于:获取地图服务提供商提供的瓦片地图的待填充定位符;根据所述行信息和所述列信息填充所述待填充定位符中的参数,得到对应的统一资源定位符;根据所有所述统一资源定位符从所述地图服务提供商的瓦片地图文件中获取所述业务标记点在各显示层级下对应的瓦片地图,得到瓦片地图集。
在本实施例中,所述地图图层加载装置还包括渲染模块608,所述渲染模块608具体用于:根据所述瓦片地图文件计算各个瓦片地图的三维模型坐标;将所述瓦片地图文件中各瓦片地图的图片转化为纹理图片,并计算所述纹理图片的纹理坐标;根据各个瓦片地图的三维模型坐标、纹理图片和纹理坐标,调用预设的渲染函数对各个瓦片地图进行渲染,得到渲染后的瓦片地图。
在本实施例中,所述地图图层加载装置还包括优先级分配模块609,所述优先级分配模块609具体用于:获取所述业务标记点集中各标记点的标记点类型;根据预设的优先级分配规则和所述标记点类型为所述业务标记点中的各业务标记点分配存储优先级。
在本实施例中,所述地图图层加载装置还包括排序模块610,所述排序模块610具体用于:使用预设大小的线程池下载预设数量的瓦片地图,并记录下载的数据量、下载时间、CPU占用率和内存占用率;根据所述数据量、下载时间、CPU占用率和内存占用率计算下载压力;根据所述下载压力和预设的压力阈值,调整所述线程池的大小以及下载所述瓦片地图的下载顺序,其中,所述下载顺序根据所述存储优先级进行调整。
在本实施例中,所述加载模块607具体用于;当所述用户非首次登陆所述地理信息系统或所述用户在所述地理信息系统中进行地图缩放操作时,获取所述缩放操作对应的缩放区域;判断所述缩放区域中是否包含所述业务标记点集中业务标记点;若是,则根据所述缩放区域中的业务标记点,从所述本地图层缓存数据库中的缓存数据集中调取对应的瓦片地图进行地图数据加载;若否,则根据所述缩放区域从预设的瓦片地图文件中下载对应的瓦片地图进行地图数据加载。
本实施例在上一实施例的基础上,详细描述了各个模块的具体功能以及部分模块的单元构成,通过新增的模块,针对用户需求量较大的业务标记点对应的瓦片地图预先加载至本地缓存中,在用户对地图进行操作时,直接根据本地缓存中的瓦片地图进行加载,提高地图加载的效率。
上面图6和图7从模块化功能实体的角度对本发明实施例中的中地图图层加载装置进行详细描述,下面从硬件处理的角度对本发明实施例中地图图层加载设备进行详细描述。
图8是本发明实施例提供的一种地图图层加载设备的结构示意图,该地图图层加载设备800可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上处理器(central processing units,CPU)810(例如,一个或一个以上处理器)和存储器820,一个或一个以上存储应用程序833或数据832的存储介质830(例如一个或一个以上海量存储设备)。其中,存储器820和存储介质830可以是短暂存储或持久存储。存储在存储介质830的程序可以包括一个或一个以上模块(图示没标出),每个模块可以包括对地图图层加载设备800中的一系列指令操作。更进一步地,处理器810可以设置为与存储介质830通信,在地图图层加载设备800上执行存储介质830中的一系列指令操作,以实现上述地图图层加载方法的步骤。
地图图层加载设备800还可以包括一个或一个以上电源840,一个或一个以上有线或无线网络接口850,一个或一个以上输入输出接口860,和/或,一个或一个以上操作系统831,例如Windows Serve,Mac OS X,Unix,Linux,FreeBSD等等。本领域技术人员可以理解,图8示出的地图图层加载设备结构并不构成对本申请提供的地图图层加载设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
本发明还提供一种计算机可读存储介质,该计算机可读存储介质可以为非易失性计算机可读存储介质,该计算机可读存储介质也可以为易失性计算机可读存储介质,所述计算机可读存储介质中存储有指令,当所述指令在计算机上运行时,使得计算机执行所述地图图层加载方法的步骤。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统或装置、单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(read-only memory,ROM)、随机存取存储器(random access memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (10)
1.一种地图图层加载方法,其特征在于,所述地图图层加载方法包括:
当用户登录所述地理信息系统时,根据预设的中心坐标加载初始图层,并将所述初始图层显示在所述地理信息系统上;
判断所述用户是否为首次登陆所述地理信息系统;
若是,则获取预设的业务标记点集中业务标记点的坐标信息和所述地理信息系统的显示视野信息;
根据所述坐标信息和显示视野信息计算所述业务标记点在各显示层级对应的行信息和列信息;
根据所述行信息和所述列信息,从预设的瓦片地图文件中下载所述业务标记点在各显示层级下对应的瓦片地图,得到瓦片地图集;
将所述业务标记点集中所有业务标记点对应的瓦片地图集作为缓存数据集存储至预设的本地图层缓存数据库中;
当所述用户非首次登陆所述地理信息系统或所述用户在所述地理信息系统中进行地图缩放操作时,根据所述本地图层缓存数据库中的缓存数据集进行对应的地图数据加载。
2.根据权利要求1所述的地图图层加载方法,其特征在于,所述根据所述坐标信息和显示视野信息计算所述业务标记点在各显示层级对应的行信息和列信息包括:
获取所述各显示层级对应的每像素实际单位大小和预设的瓦片大小;
根据所述每像素实际单位大小和所述瓦片大小,计算各显示层级对应的每个瓦片代表的实际长度;
根据所述显示视野信息计算视野原点坐标,并根据所述坐标信息和所述视野原点坐标计算坐标距离,其中,所述坐标距离分别包括行距离和列距离;
将所述行距离和所述列距离分别除以所述实际长度并向下取整,得到对应的行信息和列信息。
3.根据权利要求1所述的地图图层加载方法,其特征在于,所述根据所述行信息和所述列信息,从预设的瓦片地图文件中下载所述业务标记点在各显示层级下对应的瓦片地图,得到瓦片地图集包括:
获取地图服务提供商提供的瓦片地图的待填充定位符;
根据所述行信息和所述列信息填充所述待填充定位符中的参数,得到对应的统一资源定位符;
根据所有所述统一资源定位符从所述地图服务提供商的瓦片地图文件中获取所述业务标记点在各显示层级下对应的瓦片地图,得到瓦片地图集。
4.根据权利要求3所述的地图图层加载方法,其特征在于,在所述根据所有所述统一资源定位符从所述地图服务提供商的瓦片地图文件中获取所述业务标记点在各显示层级下对应的瓦片地图,得到瓦片地图集之后,还包括:
根据所述瓦片地图文件计算各个瓦片地图的三维模型坐标;
将所述瓦片地图文件中各瓦片地图的图片转化为纹理图片,并计算所述纹理图片的纹理坐标;
根据各个瓦片地图的三维模型坐标、纹理图片和纹理坐标,调用预设的渲染函数对各个瓦片地图进行渲染,得到渲染后的瓦片地图。
5.根据权利要求1所述的地图图层加载方法,其特征在于,从预设的瓦片地图文件中下载所述业务标记点在各显示层级下对应的瓦片地图,得到瓦片地图集之前,还包括:
获取所述业务标记点集中各标记点的标记点类型;
根据预设的优先级分配规则和所述标记点类型为所述业务标记点中的各业务标记点分配存储优先级。
6.根据权利要求5所述的地图图层加载方法,其特征在于,在所述根据预设的优先级分配规则和所述标记点类型为所述业务标记点中的各业务标记点分配存储优先级之后,还包括:
使用预设大小的线程池下载预设数量的瓦片地图,并记录下载的数据量、下载时间、CPU占用率和内存占用率;
根据所述数据量、下载时间、CPU占用率和内存占用率计算下载压力;
根据所述下载压力和预设的压力阈值,调整所述线程池的大小以及下载所述瓦片地图的下载顺序,其中,所述下载顺序根据所述存储优先级进行调整。
7.根据权利要求1-6中任一项所述的地图图层加载方法,其特征在于,所述当所述用户非首次登陆所述地理信息系统或所述用户在所述地理信息系统中进行地图缩放操作时,根据所述本地图层缓存数据库中的缓存数据集进行对应的地图数据加载包括:
当所述用户非首次登陆所述地理信息系统或所述用户在所述地理信息系统中进行地图缩放操作时,获取所述缩放操作对应的缩放区域;
判断所述缩放区域中是否包含所述业务标记点集中业务标记点;
若是,则根据所述缩放区域中的业务标记点,从所述本地图层缓存数据库中的缓存数据集中调取对应的瓦片地图进行地图数据加载;
若否,则根据所述缩放区域从预设的瓦片地图文件中下载对应的瓦片地图进行地图数据加载。
8.一种地图图层加载装置,其特征在于,所述地图图层加载装置包括:
登录模块,用于当用户登录所述地理信息系统时,根据预设的中心坐标加载初始图层,并将所述初始图层显示在所述地理信息系统上;
判断模块,用于判断所述用户是否为首次登陆所述地理信息系统;
获取模块,用于当所述用户是否为首次登陆所述地理信息系统时,获取预设的业务标记点集中业务标记点的坐标信息和所述地理信息系统的显示视野信息;
计算模块,用于根据所述坐标信息和显示视野信息计算所述业务标记点在各显示层级对应的行信息和列信息;
下载模块,用于根据所述行信息和所述列信息,从预设的瓦片地图文件中下载所述业务标记点在各显示层级下对应的瓦片地图,得到瓦片地图集;
本地存储模块,用于将所述业务标记点集中所有业务标记点对应的瓦片地图集作为缓存数据集存储至预设的本地图层缓存数据库中;
加载模块,用于当所述用户非首次登陆所述地理信息系统或所述用户在所述地理信息系统中进行地图缩放操作时,根据所述本地图层缓存数据库中的缓存数据集进行对应的地图数据加载。
9.一种地图图层加载设备,其特征在于,所述地图图层加载设备包括:存储器和至少一个处理器,所述存储器中存储有指令,所述存储器和所述至少一个处理器通过线路互连;
所述至少一个处理器调用所述存储器中的所述指令,以使得所述地图图层加载设备执行如权利要求1-7中任一项所述的地图图层加载方法的步骤。
10.一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1-7中任一项所述的地图图层加载方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111016945.9A CN113656528A (zh) | 2021-08-31 | 2021-08-31 | 地图图层加载方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111016945.9A CN113656528A (zh) | 2021-08-31 | 2021-08-31 | 地图图层加载方法、装置、设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113656528A true CN113656528A (zh) | 2021-11-16 |
Family
ID=78482591
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111016945.9A Pending CN113656528A (zh) | 2021-08-31 | 2021-08-31 | 地图图层加载方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113656528A (zh) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114928652A (zh) * | 2022-04-29 | 2022-08-19 | 高德软件有限公司 | 地图数据传输方法、装置、电子设备、存储介质和程序 |
CN115098888A (zh) * | 2022-08-23 | 2022-09-23 | 北京帝测科技股份有限公司 | 地图数据包全流程自适应生成与加密方法、装置和设备 |
CN115102948A (zh) * | 2022-06-24 | 2022-09-23 | 阿波罗智联(北京)科技有限公司 | 地图瓦片的自动下载方法、装置、设备以及存储介质 |
CN115451943A (zh) * | 2022-11-11 | 2022-12-09 | 阿里巴巴(中国)有限公司 | 电子地图处理、导航方法、装置、设备及存储介质 |
CN115984457A (zh) * | 2022-12-02 | 2023-04-18 | 北京百度网讯科技有限公司 | 三维模型显示方法、装置和电子设备 |
CN116627580A (zh) * | 2023-07-25 | 2023-08-22 | 江苏正泰泰杰赛智能科技有限公司 | 一种网页端的多级缓存的三维模型加载方法 |
CN116680493A (zh) * | 2023-08-04 | 2023-09-01 | 中航信移动科技有限公司 | 一种航线地图数据预缓存方法、存储介质及电子设备 |
CN117390057A (zh) * | 2023-12-11 | 2024-01-12 | 成都智达万应科技有限公司 | 一种地图数据查询方法及系统 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090015467A1 (en) * | 2006-02-01 | 2009-01-15 | Nhn Corporation | System and method for providing geographic information in private webpage |
CN102819530A (zh) * | 2011-06-10 | 2012-12-12 | 中兴通讯股份有限公司 | 电子地图的显示方法及装置 |
CN111078817A (zh) * | 2019-12-26 | 2020-04-28 | 中科星图股份有限公司 | 一种基于Redis和PostgreSQL的瓦片地图服务集群系统和方法 |
-
2021
- 2021-08-31 CN CN202111016945.9A patent/CN113656528A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090015467A1 (en) * | 2006-02-01 | 2009-01-15 | Nhn Corporation | System and method for providing geographic information in private webpage |
CN102819530A (zh) * | 2011-06-10 | 2012-12-12 | 中兴通讯股份有限公司 | 电子地图的显示方法及装置 |
CN111078817A (zh) * | 2019-12-26 | 2020-04-28 | 中科星图股份有限公司 | 一种基于Redis和PostgreSQL的瓦片地图服务集群系统和方法 |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114928652A (zh) * | 2022-04-29 | 2022-08-19 | 高德软件有限公司 | 地图数据传输方法、装置、电子设备、存储介质和程序 |
CN115102948A (zh) * | 2022-06-24 | 2022-09-23 | 阿波罗智联(北京)科技有限公司 | 地图瓦片的自动下载方法、装置、设备以及存储介质 |
CN115098888A (zh) * | 2022-08-23 | 2022-09-23 | 北京帝测科技股份有限公司 | 地图数据包全流程自适应生成与加密方法、装置和设备 |
CN115451943A (zh) * | 2022-11-11 | 2022-12-09 | 阿里巴巴(中国)有限公司 | 电子地图处理、导航方法、装置、设备及存储介质 |
CN115451943B (zh) * | 2022-11-11 | 2023-09-15 | 阿里巴巴(中国)有限公司 | 电子地图处理、导航方法、装置、设备及存储介质 |
CN115984457A (zh) * | 2022-12-02 | 2023-04-18 | 北京百度网讯科技有限公司 | 三维模型显示方法、装置和电子设备 |
CN116627580A (zh) * | 2023-07-25 | 2023-08-22 | 江苏正泰泰杰赛智能科技有限公司 | 一种网页端的多级缓存的三维模型加载方法 |
CN116627580B (zh) * | 2023-07-25 | 2023-09-22 | 江苏正泰泰杰赛智能科技有限公司 | 一种网页端的多级缓存的三维模型加载方法 |
CN116680493A (zh) * | 2023-08-04 | 2023-09-01 | 中航信移动科技有限公司 | 一种航线地图数据预缓存方法、存储介质及电子设备 |
CN116680493B (zh) * | 2023-08-04 | 2023-10-20 | 中航信移动科技有限公司 | 一种航线地图数据预缓存方法、存储介质及电子设备 |
CN117390057A (zh) * | 2023-12-11 | 2024-01-12 | 成都智达万应科技有限公司 | 一种地图数据查询方法及系统 |
CN117390057B (zh) * | 2023-12-11 | 2024-03-19 | 成都智达万应科技有限公司 | 一种地图数据查询方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113656528A (zh) | 地图图层加载方法、装置、设备及存储介质 | |
JP6756561B2 (ja) | モバイル装置生成事象分析に基づく地図タイルデータのプリフェッチ | |
EP2560142B1 (en) | Generating and serving tiles in a digital mapping system | |
USRE41983E1 (en) | Method of organizing and compressing spatial data | |
US9159150B2 (en) | Bitmap array for optimally distributing map data content to wireless communications devices | |
JP5334911B2 (ja) | 3次元地図画像生成プログラムおよび3次元地図画像生成システム | |
CA2560560C (en) | Generating and serving tiles in a digital mapping system | |
US20080074423A1 (en) | Method and System for Displaying Graphical Objects on a Digital Map | |
DE202014010881U1 (de) | Bereitstellen von Indooreinrichtungs-Informationen auf einer digitalen Karte | |
CN103955955B (zh) | 一种电子地图信息处理方法及装置 | |
CN105574102A (zh) | 一种电子地图数据加载的方法及装置 | |
US7609258B2 (en) | Information processing apparatus, information processing method, and program | |
CN110597940A (zh) | 基于微信的自然资源外业核查方法及系统、服务器及介质 | |
US9779543B2 (en) | Method for providing and receiving information representing physical features of a portion of a three dimensional surface | |
CN113656527A (zh) | 地图资源处理方法、装置、计算机设备和存储介质 | |
CN103902633B (zh) | 一种生成poi的热区数据的方法及其装置、系统 | |
CN110046210B (zh) | 地图信息更新方法、装置、电子设备和存储介质 | |
JP2005208893A (ja) | 地震災害復旧支援装置、地震災害復旧支援システム、地震災害復旧支援方法及び地震災害復旧支援プログラム | |
CN115049758A (zh) | 基于WebGIS的专题地图制作方法、服务器以及存储介质 | |
CN114238528A (zh) | 一种地图加载方法、装置、电子设备及存储介质 | |
JP6042683B2 (ja) | 地図画像生成装置、地図画像生成方法及びプログラム | |
CN114020825A (zh) | 基于WebGIS的煤矿井下矿图可视化方法 | |
CN110362765A (zh) | 信息显示方法、装置及计算机可读存储介质 | |
CN112417327B (zh) | 一种数据处理方法、装置、设备及介质 | |
CN110889042B (zh) | 资源推荐方法、装置、计算机设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
TA01 | Transfer of patent application right | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20220602 Address after: 518000 China Aviation Center 2901, No. 1018, Huafu Road, Huahang community, Huaqiang North Street, Futian District, Shenzhen, Guangdong Province Applicant after: Shenzhen Ping An medical and Health Technology Service Co.,Ltd. Address before: Room 12G, Area H, 666 Beijing East Road, Huangpu District, Shanghai 200001 Applicant before: PING AN MEDICAL AND HEALTHCARE MANAGEMENT Co.,Ltd. |