鄙人在毕业走投无路的时候,幸得某公司,收留,十分感谢。非常感谢那个带我的工程师

工作快一年了,我想离职了,感觉有点对不起招我、带我的那个工程师.....
还是回归地图插件的感悟吧:在公司上班其实主要还是维护代码,修改为主,添加功能为辅,时有闲暇,阅读代码,不敢说对于公司的地图插件了如指掌,但是好得也知道大概是怎么回事了。
1:总述:
以前觉得总述神马的,应该放在最后看,其实写放在前面,可以给人大概的映像,总分总的结构好点,那么说说地图吧,
1.1:地图之底图:
这个就是看到的实实在在的地图
我一开始以为底图是自己画出来的,其实太天真了,地图其实是图片来的,靠一张张图片拼接起来的......瞬间感觉档次降低了...有木有,地图高端大气上档次的感觉瞬间没有了,有木有..... 小图片咱们称之为切片吧.....
放大后:
so 只要你知道那块区域应该贴哪张图片后,地图也就出来了。
1.1.1:怎么知道哪块区域该贴哪张图片呢?
一般随着地图数据,都会有相应的配置文件,然后可以通过配置文件计算经纬度 和图片的对应关系,这个可以详细参考arcgis deegree pgis之类的地图,当然不同规则的地图排布,其配置文件是不同的,这个是GIS范围,暂不作讨论,有兴趣的朋友可以自行google类似文档。
举例:地图切片编号以2维数组的形式来表示
0,0 表示最左上角的地图,那么配置文件肯定记录了该地图,最最上角那个像素代表的经纬度(或者地理坐标)
每个地图切片编号的大小都是一致的。 256 × 256 或者其他,在同一套数据中应该一致。
然后,根据像素坐标和地理坐标的转换,你就可以知道120.14,30.3地图标号在哪里,
1.1.2:像素坐标和地理坐标,转换
这个问题其实和1.1.1问题类似,当然,想要在哪个区域绘制哪块地图,从程序逻辑控制上来讲,可以分为两类:
a:已经有相关的配置信息,告诉屏幕上的一个像素,对应于切片上的多少个地图单位。这种类型的地图一般不进行缩放地图切片,原先多少像素的图片,就占用屏幕多少像素。Resolution这个值,这个值代表了地图切片一个像素,代表多少经纬度(有的可能是其他单位),你所需要做的就是通过计算屏幕上两点的像素差×Resolution这个值,就可以明确知道,这两点差多少个经纬度(地图单位)。例如,你需要维护一个固定屏幕点对应于实际的地理坐标,然后,屏幕上任意一点,都可以根据前面的参照点计算出实际的地理坐标。例如:屏幕参考点左上角像素坐标是0,0,其坐标是120.14,30.241,每个像素占用了resolution个地理坐标, 那么屏幕坐标如果是100, 100, 其实际的地理坐标是 120.14+100*resolution, 30.241-100*resolution(经度,左向减小,右向增加,维度,上面高,下面低).
b:单纯的一张图片其实也可以作为地图底图,说白了,前面只不过把图片给切了,然后根据需求显示需要显示的图片,而这个是把原来较大的图片,根据需求,程序来控制显示区域。这种没有配置文件,则可根据自己来定义,规则不限。
鄙人做过一种,就是图片的像素坐标和屏幕坐标的转换,
举例:
正常状态 图片1像素 对应于屏幕1像素
放大 图片1 像素,显示在屏幕上2像素
缩小 图片2像素,显示在屏幕1像素
这里无论是缩小还是放大,都是同一张图片。而a的缩放,则是不同的图片,可见上图。
1.2:图标层
就是google地图上的 地铁图标 绘制,这些是有和地图匹配的数据文件,然后坐标转换,并进行显示
1.3:矢量元素层:
公交线路:和地图地理信息匹配的数据的显示
一般,这种都是有一个叫做shapefile文件的矢量数据,然后通过地理坐标转换成像素坐标,然后在底图上绘制显示
1.4:零时的绘制层
路况信息:这种一般根据实时数据来刷新绘制
它和公交路线的区别在于,公交路线时有一中类似于数据库的文件格式,一般和地图匹配,公交路线不变化,他是不会去跟新数据的,而路况是实时刷行数据进行显示的,有数据源接入。
1.5:标注:
google地图上你,查找路线时候,他会绘制出一条路线出来
用户的操作,定点标绘
当然这个也可以作为是临时的绘制层

工作10个月,做地图插件的感悟——理论篇相关推荐

  1. 10个jQuery全局地图插件

    在这篇文章中,我们将与您分享10个jQuery全球地图插件的集合,如果您想在您的网站上显示全球地图,您肯定会发现它们很有用. 世界或特定国家/地区的jQuery交互式地图和图像地图的集合. 这些地图插 ...

  2. 安装Ubuntu 14.10后要做的事(下)—— 开发工具篇

    1 完善GCC环境 安装g++编译器 命令: sudo apt-get install build-essential build-essential是一套完整的软件包,它提供了编译程序必需的软件包列 ...

  3. 2011年9月最新整理的10个有趣的jQuery插件集合

    这篇文章将整理出最有趣的jQuery10个插件集合,包括不同的插件,如滑块,用户界面​​对话框,图像过滤器等,对于喜欢把网页做得很炫很有创意的朋友,这些插件将是非常有帮助的. 1. Rotating ...

  4. 10个月接私单赚了60多万,加工资年入百万,同学:你在做灰产吗?

    所谓的私活,意思是在非工作时间,闲暇之余去做另外一份工作,利用业余时间去做兼职,随着互联网行业过于火热,越来越多的职场一族投身互联网.线下的实体店.以及实体工厂也慢慢向互联网转型,需求量大自然有市场, ...

  5. 2020.10月做题记录

    PS:本博客仅选择了一些作者认为有必要记录的题目进行记录. week -1 2020.09.28-2020.10.4 军训+国庆放假-就这样又废了一周- 2020.10.04 回来第一天完全没有状态- ...

  6. astar插件下载 就行_暗黑破坏神2地图插件常用的设置,做自己的私人订制游戏!...

    暗黑2是一款很老的游戏,虽然很经典,但游戏里有很多地方在今天看来有很多不方便的地方,比如无法查看怪物的一些属性,小地图上没有怪物显示,装备系统很复杂但一些数值不能直接查看比如物品等级.所以如今很多朋友 ...

  7. Graylog收集nginx日志做地图事态感知

    文章目录 这个东西有什么用呢 搜集日志的过程如下图 开始部署 在客户端安装 Sidecar 在客户端安装 Filebeat 在Server服务端添加Sidecar 通过Nginx日志做地图标识 这个东 ...

  8. 工作 10 年后转行程序员,如今 35+ 岁并不焦虑!

    ‍‍ 作者| 程军 来源| 军哥手记(ID:zxhy_cj) 今天文章的主人公是我的一位读者,暂且称他为 A 君.不过 A 君有点特别,非科班,工作 10 年后才转行 iOS 程序员.今年 36 岁, ...

  9. 真·摸鱼带师!每天工作10分钟年薪57万,这位程序员火了

    金磊 博雯 发自 凹非寺 量子位 | 公众号 QbitAI 每天工作10分钟,还能拿57万年薪? 最近,这么一个看似"天上掉馅饼"的故事迅速在外网走红,在Reddit点赞超过8万, ...

最新文章

  1. 一张图实现3D人脸建模!这是中科院博士生入选ECCV的新研究 | 开源
  2. elasticsearch health yellow
  3. c语言file_C语言 技能提升 系列文章(七)格式化输入/输出
  4. 20090701随笔
  5. 通信网络基础期末复习-第五章-路由算法
  6. 必读 | 六月份不容错过的十大重磅好文,机器学习和数据科学的小伙伴拿走不谢 原创 2017-07-10 爱收藏的 AI科技大本营 作者 | Flavian Hautbois 翻译 | AI科技大
  7. 北京/苏州内推 | 微软亚洲互联网工程院招聘算法工程师/应用科学家
  8. 信息论与贝叶斯(二)
  9. 什么是互联网思维?给你最全面的解释
  10. vs code发布1.37,全部换新的图标,这跟java是有仇吧,.java图标无法接受
  11. java int 转 object_在java上将int转换为Object
  12. 计算机语言写信祝福语,信件祝福语
  13. namecheap 添加二级域名
  14. 车联网技术 应用场景 各个领域方向(大方向分析)
  15. java数据容器_Java容器概览
  16. java定时器整点报时_单片机 整点报时 定时小闹钟程序
  17. 国内人才申领《上海市居住证》审核试行办法
  18. 腾讯云5000亿元、阿里云2000亿元,都是投的啥?
  19. java.lang.NoSuchMethodError: net.sf.jsqlparser.statement.select.PlainSelect.getGroupBy()Lnet/sf/jsql
  20. java基于springboot的高考填报志愿综合参考系统

热门文章

  1. leetcode每日一题2029. 石子游戏 IX 博弈相对论 不战而屈人之兵
  2. 鸿蒙系统开始测试了,华为开始测试鸿蒙系统,百万台华为手机正在测试中,网友:厉害了...
  3. 旋转弹飞控系统半实物仿真平台ETest
  4. Java实现 谁不爱打牌
  5. 数字的ASCII码值转为大写字母
  6. 程序员如何实现“互联网+”03-为什么需要有个网站
  7. 使用 Metasploit 渗透局域网 Windows 设备
  8. 设计模式之禅学习笔记
  9. 重装战姬服务器维护,重装战姬2020年9月10日更新维护公告重装战姬2020年9月10日更新了什么 - 量产资源网...
  10. ABR与ASBR区别