CN106339430B - 基于地图api的海量覆盖物绘制方法 - Google Patents
基于地图api的海量覆盖物绘制方法 Download PDFInfo
- Publication number
- CN106339430B CN106339430B CN201610686349.4A CN201610686349A CN106339430B CN 106339430 B CN106339430 B CN 106339430B CN 201610686349 A CN201610686349 A CN 201610686349A CN 106339430 B CN106339430 B CN 106339430B
- Authority
- CN
- China
- Prior art keywords
- covering
- map
- latitude
- webgl
- data
- 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.)
- Active
Links
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/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/957—Browsing optimisation, e.g. caching or content distillation
- G06F16/9574—Browsing optimisation, e.g. caching or content distillation of access to content, e.g. by caching
-
- 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/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45504—Abstract machines for programme code execution, e.g. Java virtual machine [JVM], interpreters, emulators
- G06F9/45529—Embedded in an application, e.g. JavaScript in a Web browser
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Processing Or Creating Images (AREA)
- Instructional Devices (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种基于地图API的海量覆盖物绘制方法,属于地图API函数应用技术领域领域,该方法包括:在地图的布局上对应放置一层图形容器,并在图形容器上建立WEBGL坐标系,所述WEBGL坐标系的原点与地图中预设的经纬度坐标点对应;从后台提取覆盖物的经纬度坐标数据,并把覆盖物的经纬度坐标数据转化为WEBGL坐标系的数据,得到覆盖物转化后的坐标点(x,y);将坐标点(x,y)作为覆盖物的原点,通过显卡绘制覆盖物。WEBGL绘图是通过显卡绘图而不是通过浏览器查找加载图形,极大的提升了绘图的速度和覆盖物的加载速度,避免出现因当覆盖物数量过多时,地图加载速度变慢甚至导致浏览器崩溃的现象。
Description
技术领域
本发明涉及地图API函数应用技术领域领域,特别涉及一种基于地图API的海量覆盖物绘制方法。
背景技术
随着物联网技术的发展,地图应用范围在不断的增加,地图应用程序接口(Application Programming Interface,API)被运用在越来越多的领域,而地图覆盖物是地图API应用中不可或缺的一个环节,在现实应用过程中,往往需要将海量的覆盖物添加到地图上。
目前在地图API的应用过程中仍存在明显的缺陷:目前地图API的覆盖物添加方法是浏览器访问内存中的图形,把图形加载到浏览器中。因此加载覆盖物的速度比较慢,而且当地图覆盖物的数量过多时,地图的加载过程会变得更慢,甚至会导致浏览器的崩溃。
发明内容
本发明的目的在于提供一种基于地图API的海量覆盖物绘制方法,以解决现有的覆盖物绘制速度慢且通过浏览器加载覆盖物速度慢的问题。
在图形容器上建立WEBGL坐标系,所述WEBGL坐标系的原点与地图中预设的经纬度坐标点对应;
从后台提取覆盖物的经纬度坐标数据,并把覆盖物的经纬度坐标数据转化为WEBGL坐标系的数据,得到覆盖物转化后的坐标点(x,y);
将坐标点(x,y)作为覆盖物的原点,通过显卡绘制覆盖物。
与现有技术相比,本发明存在以下技术效果:一,本发明是在图形容器上通过WEBG绘制覆盖物而不是通过浏览器加载覆盖物,因此,极大的提升了绘图的速度,而且可以将利用本发明中的绘制方法绘制出的覆盖物大量的添加到地图API中时,提高了覆盖物的添加数量,另外,也极大的提升了覆盖物的加载速度,避免出现因当覆盖物数量过多时,地图加载速度变慢甚至导致浏览器崩溃的现象。二,通过本发明中的覆盖物绘制方法,适用于任何类型的地图API。三,通过本发明中的覆盖物绘制方法,可以任意绘制覆盖物的大小和形状,使覆盖物更加多样化,具有很好的灵活性和实用性。
附图说明
图1是本发明一实施例中的基于地图API的海量覆盖物绘制方法的流程图;
图2是本发明一实施例中的基于地图API的海量覆盖物绘制方法的流程图;
图3是本发明一实施例中添加鼠标点击事件的流程图。
具体实施方式
下面结合图1至图3,对本发明做进一步详细叙述。
如图1所示,本实施例提供了一种基于地图API的海量覆盖物绘制方法,包括如下步骤S1至S3:
S1、在地图的布局上对应放置一层图形容器,并在图形容器上建立WEBGL坐标系,所述WEBGL坐标系的原点与地图中预设的经纬度坐标点对应;
具体地,该处的WEBGL坐标系的原点与地图中预设的经纬度坐标点对应是指:将方向从北向南定义为WEBGL坐标系的Y轴正方向、西经向东经方向定义为WEBGL坐标系的X轴正方向,WEBGL坐标系的原点与经度180度与平面图最北边的交点对应。通过该步骤S1即可将在图形容器上建立的WEBGL坐标系与地图的经纬度坐标关联起来。
需要说明的是,地图上的覆盖物的数量和位置是地图自身具备的,在地图的布局上放置一层图形容器,既可以根据地图本身标注的覆盖物的位置来绘制覆盖物。
S2、从后台提取覆盖物的经纬度坐标数据,并把覆盖物的经纬度坐标数据转化为WEBGL坐标系的数据,得到覆盖物转化后的坐标点(x,y);
具体地,该处的覆盖物的经纬度数据是指地图本身标注的覆盖物的位置信息,并且覆盖物的经纬度数据已经预先存储在后台的数据库中。
在开始绘制之前,首先需要将地图本身标注好的覆盖物的经纬度数据转化为步骤S1中建立的WEBGL坐标系的数据,具体的转化过程为:
(1)将地图本身标注的覆盖物的经度坐标按照如下公式转化为WEBGL坐标系的X坐标值:
式中,zoom为地图当前的缩放级别,256指地图缩放级别为0时的地图固定像素点,180度为东西经度值,360为总经度值。
(2)将地图本身标注的覆盖物的纬度值按照如下公式转化为WEBGL坐标系的Y坐标:
式中,Φ为纬度且-90<Φ<90,Φmax为地图布局范围内的最大纬度(地图的最大纬度一般为-85<Φmax<85),256×2zoom/2为半球在当前缩放级别下的像素点,为墨卡托投影Mercatorprojection公式。
需要说明的是,如果特殊地图的纬度计算方法不是采用墨卡托投影公式,那么就需知道该地图的纬度计算方法,然后用该地图的纬度计算公式来替换墨卡托投影公式进行纬度转化的计算。
S3、将坐标点(x,y)作为覆盖物的原点,通过显卡绘制覆盖物。
具体地,在通过显卡绘制覆盖物的过程中,可以按照覆盖物的尺寸和形状来进行绘制。
如图2所示,本实施例中的基于地图API的海量覆盖物绘制方法还包括步骤S4:
S4、基于所述的图形容器,在预先添加的像素精度范围内添加鼠标点击事件。
具体地,如图3所示,添加鼠标点击事件的具体流程为:
S41、拾取鼠标在地图上的经纬度数据,并将鼠标在地图上的经纬度数据转化WEBGL坐标系的数据,得到鼠标转化后的坐标点(x`,y`);
S42、判断坐标点(x`,y`)的像素是否在预先添加的像素精度范围内,如果是,则添加鼠标点击事件,如果否,则跳出本次对比,重新执行步骤S41。
需要说明的是,当鼠标在地图上移动的时候,可拾取鼠标在地图上的当前位置的经纬度,按照上述的地图经纬度坐标转化为WEBGL坐标系数据的过程,将鼠标在地图上的当前位置的经纬度坐标转化为WEBGL坐标系数据(x`,y`),需要说明的是,这里的(x`,y`)是在图形容器上的且与鼠标在地图上的当前位置坐标对应。将(x`,y`)点的像素与预先添加在图形容器上的像素精度范围进行比较,如果(x`,y`)点的像素在预设的像素精度范围内,则添加鼠标点击事件,如果不在,则跳出此次比较,进行下一次比较。
需要说明的是,本实施中预先添加的精度范围可以根据覆盖物的尺寸和形状进行添加,精度范围可变,提高了鼠标点击事件添加的灵活性和实用性。
Claims (3)
1.一种基于地图API的海量覆盖物绘制方法,其特征在于:所述方法包括如下步骤:
S1、在地图的布局上对应放置一层图形容器,并在图形容器上建立WEBGL坐标系,所述WEBGL坐标系的原点与地图中预设的经纬度坐标点对应;
S2、从后台提取覆盖物的经纬度坐标数据,并把覆盖物的经纬度坐标数据转化为WEBGL坐标系的数据,得到覆盖物转化后的坐标点(x,y);
S3、将坐标点(x,y)作为覆盖物的原点,通过显卡绘制覆盖物。
2.如权利要求1所述的方法,其特征在于:所述方法还包括:
S4、基于所述的图形容器,在预先添加的像素精度范围内添加鼠标点击事件。
3.如权利要求2所述的方法,其特征在于:所述的步骤S4包括:
S41、拾取鼠标在地图上的经纬度数据,并将鼠标在地图上的经纬度数据转化WEBGL坐标系的数据,得到鼠标转化后的坐标点(x`,y`);
S42、判断坐标点(x`,y`)的像素是否在预先添加的像素精度范围内,如果否,则跳出本次对比,重新执行步骤S41;
S43、如果是,则添加鼠标点击事件。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610686349.4A CN106339430B (zh) | 2016-08-18 | 2016-08-18 | 基于地图api的海量覆盖物绘制方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610686349.4A CN106339430B (zh) | 2016-08-18 | 2016-08-18 | 基于地图api的海量覆盖物绘制方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106339430A CN106339430A (zh) | 2017-01-18 |
CN106339430B true CN106339430B (zh) | 2019-09-13 |
Family
ID=57825740
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610686349.4A Active CN106339430B (zh) | 2016-08-18 | 2016-08-18 | 基于地图api的海量覆盖物绘制方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106339430B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110634171B (zh) * | 2019-02-01 | 2024-02-27 | 北京完美知识科技有限公司 | 一种绘制地图的装置和方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103714167A (zh) * | 2013-12-31 | 2014-04-09 | 上海师范大学 | 一种灾害信息时空数据在线三维显示方法 |
CN104063900A (zh) * | 2014-05-30 | 2014-09-24 | 中国科学院遥感与数字地球研究所 | 基于webGL的三维地球的实现方案 |
CN104978357A (zh) * | 2014-04-10 | 2015-10-14 | 阿里巴巴集团控股有限公司 | 一种数据可视化展现方法和装置 |
CN105303506A (zh) * | 2014-06-19 | 2016-02-03 | Tcl集团股份有限公司 | 一种基于html5的数据并行处理方法及系统 |
-
2016
- 2016-08-18 CN CN201610686349.4A patent/CN106339430B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103714167A (zh) * | 2013-12-31 | 2014-04-09 | 上海师范大学 | 一种灾害信息时空数据在线三维显示方法 |
CN104978357A (zh) * | 2014-04-10 | 2015-10-14 | 阿里巴巴集团控股有限公司 | 一种数据可视化展现方法和装置 |
CN104063900A (zh) * | 2014-05-30 | 2014-09-24 | 中国科学院遥感与数字地球研究所 | 基于webGL的三维地球的实现方案 |
CN105303506A (zh) * | 2014-06-19 | 2016-02-03 | Tcl集团股份有限公司 | 一种基于html5的数据并行处理方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN106339430A (zh) | 2017-01-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110348297B (zh) | 一种用于识别立体停车库的检测方法、系统、终端和存储介质 | |
US20160358363A1 (en) | Geo-Tagging Digital Images | |
CN103793178B (zh) | 一种移动设备触摸屏中矢量图形编辑方法 | |
CN105677818B (zh) | 基于移动定位和电子地图的绘图方法及系统 | |
DE102016105731A1 (de) | Kontextbasierte grafische Benutzerschnittstellen-(GUI)-Beschattung | |
CN106339430B (zh) | 基于地图api的海量覆盖物绘制方法 | |
CN107729511B (zh) | 一种可定制的地理信息数据矩形分幅方法 | |
CN111914046B (zh) | 标的坐落图的生成方法、装置及计算机设备 | |
CN105698794A (zh) | 地图捕获方法 | |
CN107103072A (zh) | 一种在移动终端显示空间图形数据的方法及系统 | |
CN112131332B (zh) | 信息点的更新方法、装置、电子设备和计算机存储介质 | |
CN110874170A (zh) | 一种图像区域修正方法、图像分割方法及装置 | |
CN104539926A (zh) | 距离确定方法和设备 | |
CN102968805A (zh) | 一种图片叠加的方法和系统 | |
CN104346771B (zh) | 一种电子地图分层管理方法 | |
CN116050763A (zh) | 基于gis与bim的智慧工地管理系统 | |
CN116188587A (zh) | 定位方法、装置及车辆 | |
CN104539927A (zh) | 距离确定方法和设备 | |
CN111429549B (zh) | 路线图像的生成方法、装置及存储介质 | |
CN116266402A (zh) | 对象自动标注方法、装置、电子设备及存储介质 | |
CN114018243A (zh) | 地图数据处理方法、装置、设备及存储介质 | |
CN113932793A (zh) | 三维坐标定位方法、装置、电子设备和存储介质 | |
CN108305211B (zh) | 控规地块信息查询方法、电子设备、存储介质及系统 | |
CN111324682A (zh) | 基于GMap加载无地理坐标信息CAD数据方法及装置 | |
CN112363918B (zh) | 用户界面ai自动化测试方法、装置、设备和存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CP03 | Change of name, title or address | ||
CP03 | Change of name, title or address |
Address after: 230031 4th floor, No.6 Zhenxing Road, Shushan new industrial park, Hefei City, Anhui Province Patentee after: Hefei Daming Zhilian Technology Co.,Ltd. Address before: Floor 4, building 6, Zhenxing Road, Shushan new industrial park, Hefei City, Anhui Province Patentee before: HEFEI MING ENERGY-SAVING TECHNOLOGY Co.,Ltd. |