2019年9月5日

摘要: 本站已搬迁至 https://e7868a.com/gis-coordinate-project,敬请移步。 最近接手一个GIS项目,需要用到 PostGIS,GeoServer,OpenLayers 等工具组件,遇到一堆地理信息相关的术语名词,在这里做一个总结。 1. 大地测量学 (Geodesy 阅读全文
posted @ 2019-09-05 09:35 __熊_ 阅读(93140) 评论(3) 推荐(13) 编辑

2013年1月10日

摘要: IOS中,必须经过用户同意才能访问用户的地理位置(CLLocationManager),这一过程是由系统控制的,在第一次请求时为自动询问用户,如果能够向用户展示自己使用坐标的原因,而非恶意访问,用户体验会好很多。 CLLocationManager有一个purpose的属性,通过它就可以在请求中加上自己的信息,这个属性从ios 3.2开始就有了。 CLLocationManager *_locmanager = [[CLLocationManager alloc] init]; _locmanager.delegate = self; _locmanager.purpose ... 阅读全文
posted @ 2013-01-10 16:02 __熊_ 阅读(2818) 评论(0) 推荐(0) 编辑

2013年1月7日

摘要: 青岛公交查询是一款可以实时查询青岛市公交到站时刻的iPhone应用,功能很吸引人,数据也够准确,可惜原作者可能是不常坐公交的人,原作在使用上很不方便。没办法,自己花了点时间,在原应用的基础上做了些修改,以易用为主要目的。站点查询放在首页,直接获得结果,并且可以同时查看多个线路站点。 使用Search Bar和Search Display Controller结合来查找路线。线路站点列表中,可以添加自己需要经常查看的站点,也可以同时查看多个站点 接下来考虑,还可以加上自动刷新,语音报站,等功能。怕惹麻烦,先不公开ipa,有可能的话,先把代码放到GitHub上。 阅读全文
posted @ 2013-01-07 14:44 __熊_ 阅读(421) 评论(3) 推荐(0) 编辑

2012年12月20日

摘要: Windows下使用Git,msysgit是首选,但是msysgit的shell实在不给力,大小不能更改,字体难看。所以,在Windows下,在Cygwin下使用Git是个很不错的选择。我们在提交代码前,或是合并代码,查看代码修改时,经常要diff一下看看都有哪些修改内容,diff的输出,晦涩难懂,修改多了的时候,简直像天书一样。Git 1.7以后,有了一个difftool的命令,使用它,用户可以选择一个自己喜欢的diff工具来查看不同提交之间的差异。这个工具可以是命令行的如vimdiff,也可以是带GUI的如Winmerge等。Windows下的Diff工具有很多,WinMerge(免费), 阅读全文
posted @ 2012-12-20 14:43 __熊_ 阅读(10797) 评论(4) 推荐(3) 编辑

2012年12月14日

摘要: 苹果的推送服务的设计非常优秀和巧妙,开发者将消息发送到苹果的APN服务器,APN服务器将消息转发到设备上,设备与APN保持一个长连接即可,即保证了消息的实时性,又节省了系统资源,更省电。相比之下,Android这个粗放管理的,耗电大户平台,直到2.2后才添加了类似的推送服务,而且还被墙了。苹果的推送模式如下图所示:iOS应用首先要请求用户允许推送通知,用户允许后,应用会获得一个32字节的token。应用开发者要推送通知到用户的设备时,把消息和token一起发送给APN服务器,APN服务器根据token来将消息发送到用户的设备上。本文主要介绍如何通过Openssl来将推送消息发送到APN服务器, 阅读全文
posted @ 2012-12-14 20:53 __熊_ 阅读(4721) 评论(0) 推荐(1) 编辑

2012年12月2日

摘要: zookeeper号称windows下也可以用C++做开发用。并提供了zookeeper.sln、zookeeper.vcproj的工程文件。但是如果你用VC2008去打开它的话,就会报错,说工程里已添加了一个工程云云。实际上解决办法很简单,用文本编辑打开zookeeper.sln和zookeeper.vcproj会发现里面写入了两组工程文件内容,估计是自动生成的。把其中的一组删掉就可以了。 阅读全文
posted @ 2012-12-02 18:52 __熊_ 阅读(545) 评论(0) 推荐(0) 编辑
摘要: Qt编写的应用发布到用户手里,同时也要把Qt库一起打包给用户。方法有很多。1. 简单又麻烦的办法,静态编译Qt简单是因为静态编译的Qt库会随着应用一起发布,麻烦是我们必须自己编译静态的Qt。而且,很多情况下我们不仅是要使用Qt,还有很多其它的库,如果每一个都静态编译,我们的执行文件就太巨大了。所以简单的应用,静态编译可能是好的,但是,比较大的项目,这种方法就不推荐了。2. 好又不麻烦的办法,使用FrameworksMac中的GUI应用必须以Bundle的形式运行,所谓Bundle,是一个以".app"结尾命名的文件夹,系统自动识别它为一个应用包,应用所有的东西(执行文件、链 阅读全文
posted @ 2012-12-02 15:30 __熊_ 阅读(8817) 评论(1) 推荐(0) 编辑

2012年11月30日

摘要: 由于我国国情,在MapView上做标记添加Annotation时总会与实际GPS坐标有几百米的偏差。同样,在根据GPS点,做反向解析地址时也是偏移过的地址。MapView有一个属性是showsUserLocation,当置为YES时,地图上会显示一个蓝色的点,标志用户的当前位置。这个蓝色的点的位置与用户的实际位置是相符的。显然是,MapView把用户的实际坐标做了偏移,从而在偏移的地图上显示出正确的位置。如果能得到这个蓝色点的坐标,再与用户实际GPS坐标相比较,就能得到地图在当前位置的偏移值。MapView有一个MKUserLocation类型的属性userLocation。这个属性里又有一个 阅读全文
posted @ 2012-11-30 20:48 __熊_ 阅读(784) 评论(0) 推荐(0) 编辑

2012年11月18日

摘要: 设置git config --global user.name "Your Name"git config --global user.email "Your E-Mail"git config --global core.editor vimgit config --global merge.tool vimdiffgit config --list # 显示当前的配置git config --global core.autocrlf false # 停止换行的自动转换初始化或者Clone一个库git i... 阅读全文
posted @ 2012-11-18 19:22 __熊_ 阅读(658) 评论(1) 推荐(2) 编辑
摘要: 1. LifecycleWindows8应用的生命周期,与Windows Phone及其他手机平台相比更加简单,Windows8应用只有:未运行、运行、挂起,三个状态。其状态如下图:当应用切换到后台,或者系统电量低时,应用会被挂起,挂起后的应用还驻留在内存中,页面的导航状态,以及当前页面的内容等一切内容都在。当用户切换回应用时,系统自动恢复到挂起前的状态,我们不需要做任何工作,唯一需要的可能是要刷新一下数据,比如基于Location的应用和新闻类的应用,因为在挂起的这段时间里,数据可能已经发生了变化。系统会终止挂起的应用,以节省内存和电力。这时应用就从内存里消失了。如果用户再次切换回应用里,就 阅读全文
posted @ 2012-11-18 17:02 __熊_ 阅读(495) 评论(0) 推荐(0) 编辑

导航