麻辣GIS微信平台

更多 GIS 干货

微信关注不错过

正轴等角割圆锥投影源程序设计(附源码)

之前我在自己博客里发过一篇文章,是一个名为“正轴等角割圆锥投影源程序的设计”的实习题目。但是我把文件在115网盘百度网盘共享了几次,后来连接都失效了。这次在这里重新发一遍,但愿是最后一次了。

题目描述:

圆锥投影,特别是正轴等角割圆锥投影,在我国以及一些中等纬度的国家应用得非常广泛。例如,编制中华人民共和国地图(南海诸岛作插图)以及各省(区)地图都是采用这种投影。新中国成立之前,我国地形图也是采用该投影作为数学基础的。可见,等角割圆锥投影可适用编制我国不同比例尺、不同类型的地图。

制图区域:

河北省

纬度范围:北纬36° 到北纬43°

经度范围:东经112°到东经120°

制图区域中央经线:λ0=116000′

标准纬线:Ф1=37030′,Ф2=41000′

主比例尺:1:500万

经纬网密度:△Ф=△λ=10

题目要求:

1、编写正轴等角圆锥投影的源程序。在编制源程序时,采用通用程序为好,为此地球椭球的数据可采用IAG-1975椭球:a=6378140m,b=6356755m。

2、输出成果要求完整、整齐,有条件时可采用汉字化、表格化。输出成果包括:

  • U1,U2;
  • 投影常数:α
  • 积分常数:K
  • 长度比为最小的纬线纬度:φ0
  • 纬度:φ
  • 经度:λ
  • 直角坐标:X,Y

3、绘制该地图的经纬线网格。

下面是我的解决方案

(***这里是关键***)

STEP 1 用函数封装

这里所说的就是利用函数的思想来求解题目二中要求的各个参数,比如求K,我可以写一个GetK(参数1,参数2······);然后在主程序调用的时候直接传入参数即可解决,至于这个函数是怎么实现的,表问我,这是初中知识,如果不明白可以看下文的源程序!

STEP 2 MFC对话框设计

通过STEP 1是解决了算法的问题,但是我可以不喜欢一个黑乎乎的控制台界面,所以这里就设计了一个MFC界面,当然喜欢控制台的人可以跳过这步。

STEP 3 绘图

绘图是个很关键的步骤,能够求出每个点的坐标并不是什么难事,但是要在界面里给用户反映出来就麻烦了(至少我这么认为),这里我对坐标原点进行了一定的迁移,画出的图更好看一些,具体实现请见源程序。

不足之处:

当然程序还是很不完善的,这里我列举两个:

1.窗口不能重绘

2.绘制的图片不能保存

当然这仅仅是很少的一部分不足,至于第一个原因,是我不爱动弹,最近事情比较多也就没有写,至于第二个原因,现在正在想办法解决,也欢迎高手给点指导。

需要源程序的,请点击这里

博客原文:http://blog.yqc.im/map-projection.html

麻辣GIS-Sailor
作者:
GIS爱好者,学GIS,更爱玩GIS。
微博关注
手机阅读
赞赏支持
手机阅读
微信捐助麻辣GIS
微信打赏
支付宝捐助麻辣GIS
支付宝打赏

声明

1.本文所分享的所有需要用户下载使用的内容(包括但不限于软件、数据、图片)来自于网络或者麻辣GIS粉丝自行分享,版权归该下载资源的合法拥有者所有,如有侵权请第一时间联系本站删除。

2.下载内容仅限个人学习使用,请切勿用作商用等其他用途,否则后果自负。

3.如果本文对您有所帮助,请您对我们团队进行 打赏捐助让我们在传播3S的路上可以走得更远,不胜感激。PS:如果你是学生党,请优先把经费用于购买学习资料 以及 与小哥哥/小姐姐约会上:-)

如您有疑问,可在文末留言,或到麻辣GIS QQ群中提问。

QQ群(一):291616564 加入QQ群

QQ群(二):166408035 加入QQ群

QQ群(三):627853279 加入QQ群

QQ群(四):436386604 加入QQ群

QQ群(五):606176554 加入QQ群

QQ群(六):946178380 加入QQ群

QQ群(七):861271808 加入QQ群

新疆互助群:910717627 加入QQ群

微信公众号:malagis,扫描右边二维码直接关注。

发表评论