查看: 21576|回复: 29

gis与元胞机

[复制链接]
论坛徽章:
18
授权会员
日期:2005-10-30 17:05:33美羊羊
日期:2015-03-04 14:48:58马上有车
日期:2014-02-18 16:41:112014年新春福章
日期:2014-02-18 16:41:11紫蜘蛛
日期:2012-02-21 15:06:16嫦娥
日期:2012-02-21 15:05:212012新春纪念徽章
日期:2012-01-04 11:49:54ITPUB十周年纪念徽章
日期:2011-11-01 16:20:282009日食纪念
日期:2009-07-22 09:30:00数据库板块每日发贴之星
日期:2009-02-26 01:01:03
 楼主| 发表于 2014-1-31 11:51 | 显示全部楼层
本帖最后由 liyihongcug 于 2014-2-7 10:14 编辑

http://www.cnblogs.com/xppei/p/3534719.html
http://blog.csdn.net/michealtx/article/details/7522899
http://blog.csdn.net/michealtx/article/details/7522821
http://blog.sina.com.cn/s/blog_48a16dbe0100rew7.html
http://wenku.baidu.com/link?url= ... wUhCr-9fzMb2TgynbDa
http://wenku.baidu.com/view/50a78cd849649b6648d7472f.html

http://down.chinaz.com/soft/29620.htm
http://technet.microsoft.com/zh-tw/library/bb964707(v=SQL.105)

7384城市公交网查询系统基本功能说明

1.公交换乘查询,支持直达及二次以内公交换乘查询,显示最新查询记录。

2.公交线路查询,支持模糊查询自动提示,显示最新查询记录。

3.公交站点查询,支持模糊查询自动提示,显示语音相近的站点。

4.搜索查询ajax即时提示。关键词加红,视觉效果很好。

搜索提示支持拼音查询"火车站"="huochezhan",

搜索提示支持简拼查询"火车站"="hcz",

搜索提示支持模糊查询"货车"="火车",

搜索支持拼音模糊查询"ch"="c".....

5.首页公交换乘查询最新查询记录

6.首页公交线路查询最新查询记录

7.首页公交站点查询最新查询记录

8.换乘有经过多少站提示(以上可以通过提供的网址在线体验)

9.全站实现数字化参数传递,方便搜索引擎收录以及网友复制。

10.简单设置即可支持在任意目录运行

11.使用更加美观的页面风格,特别是搜索框更加漂亮

12.换乘算法计算经过站点数并按站点数从低到高排列

13.在提交查询直接(不跳转)进入数字ID参数的页面。

14.后台管理密码登录,功能增加和删除线路。

  使用和修改

15.广告修改请打开css目录下ad开头的js文件。

16.设置请记事本打开admin/conn.asp index.asp suggest.asp修改即可。

17.后台可以任意更改目录名称,增加网站安全性能

18.数据库名称修改后请改第 16. 所列文件相应名称。


后台用户 admin@ewuyi.net 密码 123456789

一条线路可以按照两条线路设计,也可以按照一条线路设计,如果按照两条线路设计,上面的表结构已经可以了;如果按照一条路设计,在uBusLinePass中加入一个字段busdirect判断方向,如果来回一样就存l,r,如果不一样分别存l或者r就可以了。



三张表,1..保存所有站点信息的表,2.线路表,即哪条线,起点和终点分别在哪里 3.线路经过站资料表,保存哪条线路所经过的站点信息表1:站点基表
uBusRoot,基本结构如下:
fId 序号
fName 站点名称

表2:线路表
uBusLine,基本结构如下:
fId 序号
fName 线路名称
fBegin 起始站编号
fEnd 终点站编号
其中fBegin,fEnd 均为 uBusRoot 表里fId值,即表示为哪个站点;

表3:线路经过表
uBusLinePass,基本结构如下:
fId 序号
lId 线路编号
rId 站点编号
fType 站点类型(0-起始站,1-终点站,2-经过站)
(fType 可以不要,这样建立视图时,把起始站和终点也加上即可。)

再需要建立两张视图来辅助我们查询:
线路视图:vBusLine
SELECT uBusLine.fId AS 序号, uBusLine.fName AS 线路名称, (SELECT uBusRoot.fName FROM uBusRoot WHERE uBusRoot.fId= uBusLine.fBegin) AS 起始站, (SELECT uBusRoot.fName FROM uBusRoot WHERE uBusRoot.fId= uBusLine.fEnd) AS 终点站
FROM uBusLine;

线路经过视图:vBusLinePass
SELECT uBusLinePass.fId AS 序号, uBusLine.fName AS 线路名称, uBusRoot.fName AS 经过站, uBusLinePass.fType AS 类型
FROM (uBusLinePass INNER JOIN uBusLine ON uBusLinePass.lId = uBusLine.fId) INNER JOIN uBusRoot ON uBusLinePass.rId = uBusRoot.fId;

基本表结构大概可以像上面这样子,其中表uBusLine和uBusLinePass,是一对多的关系,即一条线路有多个经过站,这样的话,想查经过站是不难的,当然你也可以把线路经过站的表设计的复杂一些,如:加上时间字段,表明到这个站需要多长时间等等。

我们根据以上结构来模拟一些数据:
uBusRoot
1 城东站
2 城南站
3 城西站
4 城北站
5 解放路站
6 人民路站
7 汽车总站
8 汽车二站
9 城市广场

uBusLine
1 一号线路 1 4
2 二号线路 2 7
3 三号线路 3 8

uBusLinePass
1 1 1 0
2 1 4 1
3 1 5 2
4 1 6 2
5 2 2 0
6 2 7 1
7 2 5 2
8 2 9 2
9 3 3 0
10 3 8 1
11 3 4 2
12 3 6 2

那么现在我们要查询的话,就很方便了,如,我们要查一下“一号线路”线路的信息,我们可以用语句:
SELECT * FROM vBusLinePass WHERE 线路名称='一号线路'

那么结果就是:

序号 线路名称 经过站 类型
1 一号线路 城东站 0
2 一号线路 城北站 1
4 一号线路 人民路站 2
3 一号线路 解放路站 2
https://developers.google.com/maps/documentation/javascript/3.exp/reference?hl=zh-CN
1 投影
墨卡托
好处:
(1)高纬度地区城市内视觉效果好(但在大尺度,小比例尺视野下视觉效果并不佳)
(2)能够实现全球数据的无缝拼接
坏处:
(1)高纬度地区的面积变形过大
(2)不利于与我国现有各类地理空间数据的叠加
(3)不便与用户使用GPS采集数据的叠加
(4)圆球与椭球的转换误差不可避免(为什么要将地球模拟成椭球呢,因为地球的形状似鸭梨,以椭球来表示的话,能够更加精确地描述与表达它)
经纬度
好处:
(1)能够实现全球数据的无缝拼接
(2)有利于与我国现有各类地理空间数据的叠加
(3)方便与用户使用GPS采集数据的叠加
(4)避免圆球与椭球转换时产生的数据误差
坏处:
(1)高纬度地区的城市内地图视觉效果不佳(中低纬度地区城市内地图视觉感受与墨卡托相差无几)
目前网上关于天地图投影的问题吵的不可开交,不过在我看来其实非常简单。“经纬度等间隔直投”在高纬度地区会变形严重,如果是用于大范围的小比例尺粗略展现,比如看看区域分布、长江、黄河之类的,到是无碍,但是作为城市级的应用,细到街道、建筑物,那就问题很严重了,一个非常标准的十字路口,经过“经纬度直投”投影后,两条路的成了斜交,房子也如此,直角、长方形的房子全成了菱形,矩形的路网全成了变斜的菱形。 与真实世界差距太大,对于定位于大众应用的一个网站,还是应该选择墨卡托投影。
2 配图
当今世界,想要出一版公众地图确实应该谨慎再谨慎的,因为在互联网上能看到好看的地图实在是太多了,非GIS圈的Google、微软的地图,美观淡雅,大家有口皆碑,远的ArcGIS Online上的地图林林总总,都有一些专业的味道,草根的Openstreetmap和cloudmade,样式丰富,标新立异,让人也能眼前一亮,近的MapABC,Mapbar,百度,搜狗,大家耳熟能详,在这么多已有在线地图中要脱颖而出实在是个难题,尤其是国家测绘局,那可是地图的“老佛爷” 啊,但这次出手看起来有些仓促了,也可能是配图的工具有些局限吧。
3 公交换乘
这个版到底是给谁用的。给老百姓?给政府官员?还是自娱自乐?因为公众版吗,直接想到的一定是咱们老百姓,可是我们老百姓访问它做什么?老百姓需要的是 POI查询,出行参考,实时交通,所以要想在公众口中有口碑,那就需要POI越丰富越好,路径规划越科学越精确越好,实施交通覆盖城市越多越好,可是这些在这个站点上都没有,至少是不够吧。
4 瓦片存到oracle
图片放到oracle中,要压缩,访问又要解压。这个不是OUT,有点NC。
5 浏览器支持
如果是三维的你推荐使用IE7情有可原,一个二维地图弹出来 推荐使用IE7及以上浏览器


使用道具 举报

回复
论坛徽章:
18
授权会员
日期:2005-10-30 17:05:33美羊羊
日期:2015-03-04 14:48:58马上有车
日期:2014-02-18 16:41:112014年新春福章
日期:2014-02-18 16:41:11紫蜘蛛
日期:2012-02-21 15:06:16嫦娥
日期:2012-02-21 15:05:212012新春纪念徽章
日期:2012-01-04 11:49:54ITPUB十周年纪念徽章
日期:2011-11-01 16:20:282009日食纪念
日期:2009-07-22 09:30:00数据库板块每日发贴之星
日期:2009-02-26 01:01:03
 楼主| 发表于 2014-2-7 09:33 | 显示全部楼层
1、地理坐标系、投影坐标系、空间坐标系这个几个容易混淆的概念(其实很容易理解)

#空间坐标系(3维坐标系,同于数学的),一般是指纯粹的三维空间的坐标系,表示方式大致有x、y、z坐标和a、b、r极坐标,就是数学里的概念;

#地理坐标系(3维的,与地球表面切合的),既然有地理两个字肯定与地理的东西有关,首先要知道地理坐标系的目的(就是为了定位好在地球表面的城市等地理要素的位置),它的形式与空间一样,,但由于地球表面高度不同、受重力场影响不同、受海洋与陆地的不同性质的影响,在地球里面的哪个位置才是只是要处理一下哪里是球心、原点、半径有多大。要定位一个位置不难,但要对一个地区定位就有点难了(因为到时候再投影到二维平面上时会产生不同程度的误差,我们要尽量减少这个误差)。通常一个地理坐标系需要的要素有:对地球表面或对某部分地区国家的地表进行模拟的实际地球的代替品——椭球体、要有统一基准作为高度起算点的基准面,也正因为不同类型的椭球体(长轴、短轴、扁率不同而异)对每个国家或地区的地表拟合效果不同(也就造成模拟效果与投影为平面时误差的不同和与实际重力磁场等实际要素的不同),可能这个椭球体对于这个国家的实际状况模拟很贴切,而对于另一些国家却会有很大误差。

#投影坐标系(是将3维坐标按照特定方式投影后的2维坐标系),同样的确定好椭球体后还要投影到二维平面才能方便我们日常观看和分析,这时怎样的投影方式才能更好在平面上反映实际的地面状况呢?与确定椭球体一样——不同投影方式对不同地区会有不同的反映效果,所以哪个最好,说不准,也就造成会有这么多的投影了



2、WGS84地理坐标系与北京1954、西安1980等的转换(这个要特别注意,涉及到GPS定位和切合我国实际情况的投影两者的问题)

#WGS84(World Geodetic System 1984,是为GPS全球定位系统使用而建立的地理坐标系统。详见各个百科的WGS84条目)、北京1954地理坐标、西安1980地理坐标这三者都是地理坐标系,但是:————(摘抄)需要注意的是,大家经常希望能够通过坐标转换,将北京54或西安80中的地理坐标系转换到WGS84,实际上这样做是不准确的,北京54或西安80的投影坐标可以通过计算转换到其对应的地理坐标系,但由于我国北京54和西安80中的地理坐标系到WGS84的转换参数没有公开,因此无法完成其到WGS84坐标的精准计算。正因为这个原因,在ArcGIS从WGS84转到beijing54地理坐标系时会提示有6种转换的选择:


只能靠一些经验数据来模拟转换,这就是没有公开转换参数导致的麻烦结果.



3、注意好投影的分带(主要是横轴圆柱投影会有分带) (分带的起始位置、分带的度数3°还是6°带、在南还是北半球、是否有带号开头)和默认偏移量(我国很多时候会偏移500km),当然了,也要分辨清什么是中央经线、什么是标准纬线、割圆柱还是切圆柱之类的基本概念。



4、问题:ArcGIS中图像的参考系和投影显示

WGS_1984_UTM_Zone_49N: 和

WGS_1984:


为什么只有WGS1984地理坐标系就可以了呢?不是应该有个投影的吗?还是ArcGIS默认以某种投影方式来显示了?




----------对于这个问题,现在终于知道为什么了,arcgis默认一个普通的线性投影给这些地理坐标系,arcgis官方对这个普通投影的命名是PlateCarree,投影计算是:经纬度乘以同一个系数即为平面上的坐标值,很简单,最简单,所以如果是全世界的经纬网的话,这个默认投影后的样子是一个经纬度距离都相等的方格网,最直观。之所以arcgis默认以这种所谓的投影作为无投影的地理坐标的投影,是因为这样的计算最方便,直观性也不会太差,个人认为。http://www.doc88.com/p-404269716385.html

使用道具 举报

回复
论坛徽章:
18
授权会员
日期:2005-10-30 17:05:33美羊羊
日期:2015-03-04 14:48:58马上有车
日期:2014-02-18 16:41:112014年新春福章
日期:2014-02-18 16:41:11紫蜘蛛
日期:2012-02-21 15:06:16嫦娥
日期:2012-02-21 15:05:212012新春纪念徽章
日期:2012-01-04 11:49:54ITPUB十周年纪念徽章
日期:2011-11-01 16:20:282009日食纪念
日期:2009-07-22 09:30:00数据库板块每日发贴之星
日期:2009-02-26 01:01:03
 楼主| 发表于 2014-2-7 10:09 | 显示全部楼层
本帖最后由 liyihongcug 于 2014-2-7 10:11 编辑

地理坐标系(Geographic coordinate system),Geographic coordinate system直译为地理坐标系统,是以经纬度为地图的存储单位的。很明显,Geographic coordinate system是球面坐标系统。
投影坐标系统,实质上便是平面坐标系统,其地图单位通常为米。
详见地理坐标系与投影坐标系的区别
http://www.cnblogs.com/jetz/archive/2005/03/29/127547.html
-------------------------------------------------------
地理坐标:为球面坐标。 参考平面地是 椭球面。坐标单位:经纬度
大地坐标:为平面坐标。参考平面地是 水平面      坐标单位:米、千米等。

地理坐标转换到大地坐标的过程可理解为投影。  (投影:将不规则的地球曲面转换为平面)
    我国大中比例尺地图均采用高斯-克吕格投影,其通常是按6度和3度分带投影,1:2.5万-1:50万比例尺地形图采用经差6度分带,1:1万比例尺的地形图采用经差3度分带。具体分带法是:6度分带从本初子午线开始,按经差6度为一个投影带自西向东划分,全球共分60个投影带,带号分别为1-60;3度投影带是从东经1度30秒经线开始,按经差3度为一个投影带自西向东划分,全球共分120个投影带。为了便于地形图的测量作业,在高斯-克吕格投影带内布置了平面直角坐标系统,具体方法是,规定中央经线为X轴,赤道为Y轴,中央经线与赤道交点为坐标原点,x值在北半球为正,南半球为负,y值在中央经线以东为正,中央经线以西为负。由于我国疆域均在北半球,x值均为正值,为了避免y值出现负值,规定各投影带的坐标纵轴均西移500km,中央经线上原横坐标值由0变为500km。为了方便带间点位的区分,可以在每个点位横坐标y值的百千米位数前加上所在带号,如20带内A点的坐标可以表示为YA=20 745 921.8m。
大地坐标(Geodetic Coordinate):大地测量中以参考椭球面为基准面的坐标。地面点P的位置用大地经度L、大地纬度B和大地高H表示。当点在参考椭球面上时,仅用大地经度和大地纬度表示。大地经度是通过该点的大地子午面与起始大地子午面之间的夹角,大地纬度是通过该点的法线与赤道面的夹角,大地高是地面点沿法线到参考椭球面的距离。
    方里网:是由平行于投影坐标轴的两组平行线所构成的方格网。因为是每隔整公里绘出坐标纵线和坐标横线,所以称之为方里网,由于方里线同时 又是平行于直角坐标轴的坐标网线,故又称直角坐标网。
    虽然我们可以认为方里网是直角坐标,大地坐标就是球面坐标。但是我们在一副地形图上经常见到方里网和经纬度网,我们很习惯的称经纬度网为大地坐标,这个时候的大地坐标不是球面坐标,她与方里网的投影是一样的(一般为高斯投影),也是平面坐标
引自深入理解=地理坐标系=大地坐标系
http://www.cnblogs.com/txwsh1/archive/2007/07/13/817371.html
80西安坐标系?
1978年4月在西安召开全国天文大地网平差会议,确定重新定位,建立我国新的坐标系。为此有了1980年国家大地坐标系。1980年国家大地坐标系采用地球椭球基本参数为1975年国际大地测量与地球物理联合会第十六届大会推荐的数据。该坐标系的大地原点设在我国中部的陕西省泾阳县永乐镇,位于西安市西北方向约60公里,故称1980年西安坐标系,又简称西安大地原点。基准面采用青岛大港验潮站1952-1979年确定的黄海平均海水面(即1985国家高程基准)。

什么是地心坐标系?
以地球的质心作为坐标原点的坐标系称之为地心坐标系,即要求椭球体的中心与地心重合。人造地球卫星绕地球运行时,轨道平面时时通过地球的质心,同样对于远程武器和各种宇宙飞行器的跟踪观测也是以地球的质心作为坐标系的原点,参考坐标系已不能满足精确推算轨道与跟踪观测的要求。因此建立精确的地心坐标系对于卫星大地测量、全球性导航和地球动态研究等都具有重要意义。

什么是WGS-84坐标系?
WGS-84坐标系是一种国际上采用的地心坐标系。坐标原点为地球质心,其地心空间直角坐标系的Z轴指向国际时间局(BIH)1984.0定义的协议地极(CTP)方向,X轴指向BIH1984.0的协议子午面和CTP赤道的交点,Y轴与Z轴、X轴垂直构成右手坐标系,称为1984年世界大地坐标系。这是一个国际协议地球参考系统(ITRS),是目前国际上统一采用的大地坐标系。.
  1954年北京坐标系”,“1956年黄海高程系”,是计算平面位置和高程的依据。比方说,公路里碑上的公里数,通常是从大城市起算的;说某某建筑有多高,一般是从地面算起。这就是说,地球上任何一点的位置都是相互联系,都有一定相对关系。我们测绘地面上点的位置,也是一样,也要有一个起算标准,不然就分不出高低、这了。测绘地面上某个点的位置时,需要两个起算点:一是平面位置,一是高程。计算这两个位置所依据的系统,就叫坐标系统和高程系统。
    “1954年北京坐标系”,是采用苏联克拉索夫斯基椭圆体,在1954年完成测定工作的,所以叫“1954年北京坐标系”,我国地形图上的平面坐标位置都是以这个数据为基准推算的。
    “1956年黄海高程系”,是在1956年确定的。它是根据青岛验潮站1950年到1956年的黄海验潮资料,求出该站验潮井里横按铜丝的高度为3.61米,所以就确定这个钢丝以下3.61米处为黄海平均海水面。从这个平均海水面起,于1956年推算出青岛水准原点的高程为72.289米。我国测量的高程,都是根据这一原点推算的。
ARCGIS可以实现WGS84和北京坐标系的转换
需要注意的是,大家经常希望能够通过坐标转换,将北京54或西安80中的地理坐标系转换到WGS84,实际上这样做是不准确的,北京54或西安80的投影坐标可以通过计算转换到其对应的地理坐标系,但由于我国北京54和西安80中的地理坐标系到WGS84的转换参数没有公开,因此无法完成其到WGS84坐标的精准计算。其他公开了转换参数的坐标系都可以在ArcToolbox中完成转换。
引自  ArcGIS 坐标系统文件
http://www.cnblogs.com/flyingis/archive/2007/03/02/661085.html
初步估了一下,ArcGIS对这幅图的坐标转换误差在86米左右,主要在X方向,这个精度对资源类应用可能能容忍这个误差,但对测绘、工程等应用可能就不能满足要求了,因此在使用ArcGIS进行坐标转换前需要注意这个问题,不然会影响你的分析结果的。
ArcGIS坐标转换到底有多准?[兔八哥]http://www.gissea.cn/html/2006-07/523.htm
http://bbs.godeyes.cn/showtopic. ... forumpage=1&go=prev
椭球体: 克拉索夫斯基
长半  短不同
等角  等面积
圆柱---- 墨卡托等角圆柱
圆锥---- 等角圆锥--兰勃特正形圆锥   正zhou等面积圆锥--亚尔波斯
WGS-84坐标系(World Geodetic System一1984 Coordinate System)
长半径:a=6378137±2(m);
地球引力地球质量的乘积:GM=3986005×108m3s-2±0.6×108m3s-2;
正常化二阶带谐系数:C20=-484.16685×10-6±1.3×10-9;
地球重力场二阶带球谐系数:J2=108263×10-8
地球自转角速度:ω=7292115×10-11rads-1±0.150×10-11rads-1
扁率f=0.003352810664
一种国际上采用的地心坐标系。坐标原点为地球质心,其地心空间直角坐标系的Z轴指向BIH (国际时间服务机构)1984.O定义的协议地球极(CTP)方向,X轴指向BIH 1984.0的零子午面和CTP赤道的交点,Y轴与Z轴、X轴垂直构成右手坐标系,称为1984年世界大地坐标系统。

GPS广播星历是以WGS-84坐标系为根据的
在数学中,椭圆是平面上到两个固定点的距离之和是常数的轨迹。这两个固定点叫做焦点。椭圆是一种圆锥曲线:如果一个平面切截一个圆锥面,且不与它的底面相交,也不与它的底面平行,则圆锥和平面交截线是个椭圆。

在代数上说,椭圆是在笛卡尔平面上如下形式的方程所定义的曲线
Ax^{2}+Bxy+Cy^{2}+Dx+Ey+F=0\,
使得 B^{2}<4AC\,,这里的系数都是实数,并存在定义在椭圆上的点对 (x, y) 的多于一个的解。

穿过两焦点并终止于椭圆上的线段 AB 叫做长轴。长轴是通过连接椭圆上的两个点所能获得的最长线段。穿过中心(两焦点的连线的中点)垂直于长轴并且终止于椭圆的线段 CD 叫做短轴。半长轴(图中指示为 a)是长轴的一半:从中心通过一个焦点到椭圆的边缘的线段。类似的,半短轴(图中指示为 b)是短轴的一半。

如果两个焦点重合,则这个椭圆是圆;换句话说,圆是离心率为零的椭圆。

中心位于原点的椭圆 Ax^{2}+Bxy+Cy^{2}=1\, 可以被看作单位圆在关联于对称矩阵 A^{\prime }={\begin{bmatrix}A&B/2\\B/2&C\end{bmatrix}}=PDP^{T}\, 的线性映射下的图像,这里的 D 是带有 A^{\prime } 的特征值的对角矩阵,二者沿着主对角线都是正实数的,而 P 是拥有 A^{\prime } 的特征向量作为纵列的实数的酉矩阵。椭圆的长短轴分别沿着 A^{\prime } 的两个特征向量的方向,而两个与之对应的特征值分别是半长轴和半短轴的长度的平方的倒数。

椭圆可以通过对一个圆的所有点的 x 坐标乘以一个常数而不改变 y 坐标来生成。

离心率[编辑]

椭圆的形状可以用叫做椭圆的离心率的一个数来表达,习惯上指示为 \varepsilon \,。离心率是小于 1 大于等于 0 的正数。离心率 0 表示着两个焦点重合而这个椭圆是圆。

对于有半长轴 a 和半短轴 b 的椭圆,离心率是
\varepsilon ={\sqrt {1-{\frac {b^{2}}{a^{2}}}}}.
离心率越大,a 与 b 的比率就越大,因此椭圆被更加拉长。

半焦距c 等于从中心到任一焦点的距离,则
\varepsilon ={\frac {c}{a}}.
距离 c 叫做椭圆的线性离心率。在两个焦点间的距离是 2aε。

方程[编辑]





在正规位置上的椭圆的参数方程。参数 t 是蓝线对于 X-轴的角度。
中心位于点 (h,k) 的主轴平行于 x 轴的椭圆由如下方程指定
{\frac {(x-h)^{{2}}}{a^{{2}}}}+{\frac {(y-k)^{{2}}}{b^{{2}}}}=1.
这个椭圆可以参数化表达为
x=h+a\,\cos t,\,\!y=k+b\,\sin t\,\!
这里的 t 可以限制于区间 -\pi \leq t\leq \pi \,\!。

如果 h=0 且 k=0(就是说,如果中心是原点(0,0)),则

椭圆方程 {\frac {x^{2}}{a^{2}}}+{\frac {y^{2}}{b^{2}}}=1(a>b>0) {\frac {y^{2}}{a^{2}}}+{\frac {x^{2}}{b^{2}}}=1(a>b>0)
图像   
范围 -a\leq x\leq a,-b\leq y\leq b -a\leq y\leq a,-b\leq x\leq b

相对于中心的极坐标形式[编辑]

用极坐标可表达为
r={\frac {ab}{{\sqrt {a^{2}\sin ^{2}\theta +b^{2}\cos ^{2}\theta }}}}={\frac {b}{{\sqrt {1-\varepsilon ^{2}\cos ^{2}\theta }}}}
这里的 \varepsilon  是椭圆的离心率。

相对于焦点的极坐标形式[编辑]





椭圆的极坐标,原点在 F1
有一个焦点在原点的椭圆的极坐标方程是
r={\frac {a\cdot (1-\varepsilon ^{{2}})}{1-\varepsilon \cdot \cos \theta }}.
半正焦弦和极坐标[编辑]

椭圆的半正焦弦,通常指示为 l\,\!),是从椭圆的一个焦点到椭圆自身,沿着垂直主轴的直线测量的距离。它有关于 a\,\! 和 b\,\!(椭圆的半轴),通过公式 al=b^{2}\,\! 或者如果使用离心率的话 l=a\cdot (1-\varepsilon ^{2})\,\!。

椭圆,使用半正焦弦展示

在极坐标中,一个焦点在原点而另一个焦点在负 x 轴上的椭圆给出自方程
r\cdot (1+\varepsilon \cdot \cos \theta )=l\,\!
椭圆可以被看作是圆的投影:在与水平面有角度 φ 的平面上的圆垂直投影到水平面上给出离心率 sin φ 的椭圆,假定 φ 不是 90°。





椭圆(用红色绘制)可以表达为内旋轮线在 R=2r 时的特殊情况。
面积和周长[编辑]

椭圆所包围的面积是 \pi ab\,,这里的 a\,,和b\,, 是半长轴和半短轴。在圆的情况下a=b\,,表达式简化为 \pi a^{2}\,。 椭圆的周长是 4aE({\frac {c}{a}}),这里的函数E\,是第二类完全椭圆积分。

周长为:C=4a\int _{0}^{{{\frac {\pi }{2}}}}{\sqrt {1-({\frac {c}{a}})^{2}\sin ^{2}\theta }}\ {{\rm {{d}}}}\theta \!或者C=4a\int _{{0}}^{{1}}{\frac {{\sqrt {1-({\frac {c}{a}})^{2}t^{2}}}}{{\sqrt {1-t^{2}}}}}\ {{\rm {{d}}}}t.\!

精确的无穷级数为:
C=2\pi a\left[{1-\left({1 \over 2}\right)^{2}({\frac {c}{a}})^{2}-\left({1\cdot 3 \over 2\cdot 4}\right)^{2}{c^{4} \over {3a^{4}}}-\left({1\cdot 3\cdot 5 \over 2\cdot 4\cdot 6}\right)^{2}{c^{6} \over {5a^{6}}}-\dots }\right]\!\,
或:
C=-2\pi a\sum _{{n=0}}^{\infty }{\left\lbrace \left[\prod _{{m=1}}^{n}\left({2m-1 \over 2m}\right)\right]^{2}{c^{{2n}} \over {{a^{{2n}}}\left(2n-1\right)}}\right\rbrace }
拉马努金给出一个更为接近的式子:
C\approx \pi \left[3(a+b)-{\sqrt {(3a+b)(a+3b)}}\right]\!\,
它还可以写为:
C\approx 3a\pi \left[1+{\sqrt {1-\left({\frac {c}{a}}\right)^{2}}}\right]-a\pi {\sqrt {\left[3+{\sqrt {1-({\frac {c}{a}})^{2}}}\right]\left[1+3{\sqrt {1-({\frac {c}{a}})^{2}}}\right]}}\!\,
还有一条近似很高的公式:
C\approx \pi (a+b)\left[1+{\frac {3({\frac {a-b}{a+b}})^{2}}{10+{\sqrt {4-3({\frac {a-b}{a+b}})^{2}}}}}\right]\left[1+({\frac {22}{7\pi }}-1)({\frac {a-b}{a}})^{{33}}{\sqrt[ {1000}]{({\frac {a-b}{a}})^{{697}}}}\right]\!\,
标准方程的推导[编辑]
如果在一个平面内一个动点到两个定点的距离的和等于定长,那么这个动点的轨迹叫做椭圆。

假设(注意所有假设只是为了导出椭圆方程时比较简便)动点为P(x,y)\,,两个定点为F_{1}(-c,0)\,和F_{2}(c,0)\,,则根据定义,动点P的轨迹方程满足(定义式):
|PF_{1}|+|PF_{2}|=2a(a>0)\,,其中2a\,为定长。
用两点的距离公式可得:|PF_{1}|={\sqrt {(x+c)^{2}+y^{2}}}\,,|PF_{2}|={\sqrt {(x-c)^{2}+y^{2}}}\,,代入定义式中,得:
{\sqrt {(x+c)^{2}+y^{2}}}=2a-{\sqrt {(x-c)^{2}+y^{2}}}\,
整理上式,并化简,得:
(a^{2}-c^{2})x^{2}+a^{2}y^{2}=a^{2}(a^{2}-c^{2})\, ①
当a>c\,时,并设a^{2}-c^{2}=b^{2}\,,则①式可以进一步化简:
b^{2}x^{2}+a^{2}y^{2}=a^{2}b^{2}\, ②
因为a^{2}b^{2}>0\,,将②式两边同除以a^{2}b^{2}\,,可得:
x^{2}/a^{2}+y^{2}/b^{2}=1\,
则该方程即动点P的轨迹方程,即椭圆的方程。这个形式也是椭圆的标准方程。
椭圆的图像如果在直角坐标系中表示,那么上述定义中两个定点被定义在了x轴。若将两个定点改在y轴,可以用相同方法求出另一个椭圆的标准方程:
{\frac {y^{2}}{a^{2}}}+{\frac {x^{2}}{b^{2}}}=1(a>b>0)\,在方程中,所设的2a\,称为长轴长,2b\,称为短轴长,而所设的定点称为焦点,那么2c\,称为焦距。在假设的过程中,假设了a>c\,,如果不这样假设,会发现得不到椭圆。当a=c\,时,这个动点的轨迹是一个线段;当a<c\,时,根本得不到实际存在的轨迹,而这时,其轨迹称为虚椭圆。另外还要注意,在假设中,还有一处:a^{2}-c^{2}=b^{2}\,。
通常认为圆是椭圆的一种特殊情况。

椭圆的旋转和平移[编辑]

对于平面上任意椭圆 Ax^{2}+2Bxy+Cy^{2}+Dx+Ey+F=0\,,我们总可以将之转化为
A(x-u)^{2}+2B(x-u)(y-v)+C(y-v)^{2}+f=0\,
的形式。具体步骤为,将后式的各乘积乘方项展开,根据与前式对应项系数相等的法则便可求得u,v,f的值。其中,(u,v)\,便是该椭圆的中心(f=0)。

若将
x=x^{\prime }-uy=y^{\prime }-v
带入式中便可得到平移前的椭圆。

若B\neq 0,则表示椭圆的长短轴与坐标系的坐标轴并不平行或垂直,即发生了旋转。设旋转的角度为\displaystyle \varphi ,则有
\displaystyle tan(2\varphi )=2B/(A-C) 当A-C=0,则说明\varphi =\pm {\frac {\pi }{4}}
若将
x=x^{\prime }\cos \varphi -y^{\prime }\sin \varphi y=y^{\prime }\cos \varphi +x^{\prime }\sin \varphi
带入式中便可得到旋转前的椭圆。

渐开线及其导数[编辑]
{\begin{cases}x=a\cos t+{\cfrac {abE\left(t,{\cfrac {{\sqrt {a^{2}-b^{2}}}}{a}}\right)\sin t}{{\sqrt {a^{2}\sin ^{2}t+b^{2}\cos ^{2}t}}}}\!\,\\\\y=b\sin t+{\cfrac {b^{2}E\left(t,{\cfrac {{\sqrt {a^{2}-b^{2}}}}{a}}\right)\cos t}{{\sqrt {a^{2}\sin ^{2}t+b^{2}\cos ^{2}t}}}}\!\,\\\end{cases}}


{\begin{cases}{\cfrac {{{\rm {{d}}}}x}{{\rm {{d}t}}}}={\cfrac {\left[b^{2}\sin 2t-2b^{2}\sin t\cdot E\left(t,{\cfrac {{\sqrt {a^{2}-b^{2}}}}{a}}\right)\right]\left(a^{2}\sin ^{2}t+b^{2}\cos ^{2}t\right)-ab\left(a^{2}-b^{2}\right)\sin 2t\cdot E\left(t,{\cfrac {{\sqrt {a^{2}-b^{2}}}}{a}}\right)\sin t}{2\left(a^{2}\sin ^{2}t+b^{2}\cos ^{2}t\right){\sqrt {a^{2}\sin ^{2}t+b^{2}\cos ^{2}t}}}}-a\sin t\!\,\\\\{\cfrac {{{\rm {{d}}}}y}{{\rm {{d}t}}}}={\cfrac {\left[b^{3}\sin 2t-2ab^{2}\sin t\cdot E\left(t,{\cfrac {{\sqrt {a^{2}-b^{2}}}}{a}}\right)\right]\left(a^{2}\sin ^{2}t+b^{2}\cos ^{2}t\right)-ab^{2}\left(a^{2}-b^{2}\right)\sin 2t\cdot E\left(t,{\cfrac {{\sqrt {a^{2}-b^{2}}}}{a}}\right)\sin t}{2a\left(a^{2}\sin ^{2}t+b^{2}\cos ^{2}t\right){\sqrt {a^{2}\sin ^{2}t+b^{2}\cos ^{2}t}}}}+b\cos t\!\,\\\end{cases}}
有了椭圆渐开线的导数我们可以计算它的长度,其中E\left(t,{\frac {{\sqrt {a^{2}-b^{2}}}}{a}}\right)\,是第二类完全椭圆积分。

使用道具 举报

回复
论坛徽章:
18
授权会员
日期:2005-10-30 17:05:33美羊羊
日期:2015-03-04 14:48:58马上有车
日期:2014-02-18 16:41:112014年新春福章
日期:2014-02-18 16:41:11紫蜘蛛
日期:2012-02-21 15:06:16嫦娥
日期:2012-02-21 15:05:212012新春纪念徽章
日期:2012-01-04 11:49:54ITPUB十周年纪念徽章
日期:2011-11-01 16:20:282009日食纪念
日期:2009-07-22 09:30:00数据库板块每日发贴之星
日期:2009-02-26 01:01:03
 楼主| 发表于 2014-2-7 10:17 | 显示全部楼层
本帖最后由 liyihongcug 于 2014-2-7 10:51 编辑

Google
Map

就是用的
墨卡托投影,
找了很多资料,
对这方面也有了一个大概的了解,




特指将地球表面的地理信息转换到平面地图上来。为了保证地理信息从球面转换到平面
之后之后,仍然能够被充分地表达和理解,投影要遵循一定的规则,这样的规则有很多种:
有的强调面积不变;有的强调距离不变;有的强调角度不变
...
总之是千奇百怪,严重挑战人
们的想象力,下面几幅图就是使用不同的投影模式制作的:
名人堂:众名人带你感受他们的驱动人生
马云任志强李嘉诚柳传志史玉柱
墨卡托投影,又称等角正切圆柱投影,其原理是假设有一个与在赤道与地球相切的圆柱面,
先把球面映射到这个圆柱面,再把这个圆柱面展开成为一个平面。
在墨卡托投影中,强调角度不变
假定地球表面有两点
A

B,在地球球面上,
B
相对

A
的角度是北偏东
,那么经过墨卡托投影之后,在平面地图上,
B
相对于
A
的角度仍
然是北偏东
。这一点在航海中非常重要,因为在茫茫大海中,没有什么参照物,只能根
据罗盘或者星象来判断方位,如果地图上终点相对于出发点的方位角和实际的方位角不同,
那么这样的地图在航海中没有实际意义。
正因为如此,
海图一般都是采用墨卡托投影规则制
作的(极地海图除外)。
例:设地球的半径为
R
,已知地球上一点
P
的坐标是
,其中
表示经度,范围是
-
<
<
,负数表示西经,正数表示东经;
B
表示维度,范围是
-
<
<
,负数表示南
纬,
正数表示北纬。
将地球球面通过墨卡托投影映射到平面直角坐标系中,

0
度经线与赤
道的交点的映射点为原点,
X
轴与纬线平行,并取东方为正方向;
Y
轴与经线平行,并取北
方为正方向。求
P
点在平面直角坐标系中的映射点
P'
的坐标
(Xp',Yp')

解:
根据墨卡托投影的原理可知,
墨卡托投影是由一个和地球赤道相切的圆柱面展开而成的,
所以展开之后的图形的宽度就是地球赤道的长度,
P'
点的x
坐标就是通过
P'
点的经线与赤道
的交点到
0
度经线和赤道的交点之间的距离,也就是赤道线的一部分,其值为:

P’
点的
Y
坐标稍微麻烦一点,我们看下图:
因为墨卡托投影要遵循的一个原则是方向角不变,所以映射过程中
X
方向和
Y
方向的缩放
比例要相同。从图中我们可以知道,纬度为的纬线圈,投影过后变成和赤道一样长的一
条直线,所以纬度为
的点附近一个非常小的区域,投影过后,水平方向的放大比率是
而根据墨卡托投影的规则,该块小区域垂直方向上上的放大比率也应该是
,在投影之前
的地球表面上,
小块区域竖直方向的边长就是经线的一部分,
我们可以用地球的半径乘
个小角度来表示
那么投影之后的小区域竖直方向上的边长应该是在上式中,对纬度进行积分,我们便可以计算出纬度是的点,投影之后的
Y坐标是
所以,最终的结果就是
也许你会怀疑,
这个积分是怎样计算出来的,
说实话我也没有搞清楚,
据说是骨灰级的数学
家算出来的,如果你想验证,我建议你从微分入手,证明下式成立,可能会容易一些:
至此,
我们已经了解了墨卡托投影的原理和坐标转换的算法,
但是还只能是比较粗浅的了解,
为了能够深入掌握这种投影技术,这里有几个思考题供大家练习
1
)很多人错误地认为,用一个柱面把地球罩起来,柱面与地球的赤道相切,在地球球心处
点一盏灯,
假设地球表面是半透明的,
那么在柱面上能够得到地球表面的影子,
把柱面上地
球表面的影子固定下来,
把柱面沿着
0
度经线裁开,
展开成为平面图,
就完成了墨卡托投影。
这种说法是否正确?怎样证明?如果错了错在哪里?  
2
)根据墨卡托投影得到的平面图,南北极点投影到无穷远处,但是
google
maps
的世界地
图却是正方形的,所以
google
maps
的地图上,靠近极地附近的地理信息肯定是缺失的,利


正方形

做为切入点,计算
google
maps
地图上,能够体现的最高的纬度是多少?
3)对于墨卡托投影,有一个非常形象的比喻,就是利用一个柱面把地球罩起来,柱面与地
球的赤道相切,
把地球看成一个大气球,
不断地膨胀,接触到柱面的地方就粘在柱面上,粘
住的部分就固定不动了,
剩余的部分继续膨胀,继续粘在柱面上,
从而完成投影。
这种说法
http://wenku.baidu.com/link?url=wpeY7ohMeBxmGwIN_-dUe4CJJtL33-pj3hTlGIVSVJTS1yC2z8fVH6R8ZpXKCHLNBzbDnzjMq1Jzwk_nQ21GgiqlWVGtoeRVJQVtqF6yN1a
是否正确?怎样证明?World CoordinatesWhenever the Maps API needs to translate a location in the world to  a location on a map (the screen), it needs to first translate latitude  and longitude values into a "world" coordinate. This translation is  accomplished using a map projection. Google Maps uses the     Mercator projection for this purpose. You may also define your own  projection implementing the google.maps.Projection interface.  (Note that interfaces in V3 are not classes you "subclass" but instead  are simply specifications for classes you define yourself.)
For convenience in the calculation of pixel coordinates (see below)  we assume a map at zoom level 0 is a single tile of the base tile size.  We then define world coordinates relative to pixel coordinates at zoom  level 0, using the projection to convert latitudes & longitudes to  pixel positions on this base tile. This world coordinate is a floating  point value measured from the origin of the map's projection to the  specific location. Note that since this value is a floating point value,  it may be much more precise than the current resolution of the map image  being shown. A world coordinate is independent of the current zoom
level,  in other words.
World coordinates in Google Maps are measured from the Mercator  projection's origin (the northwest corner of the map at 180 degrees  longitude and approximately 85 degrees latitude) and increase in  the x direction towards the east (right) and increase in  the y direction towards the south (down). Because the  basic Mercator Google Maps tile is 256 x 256 pixels, the usable world  coordinate space is {0-256}, {0-256} (See below.)
https://developers.google.com/maps/documentation/javascript/maptypes
地坐标(Geodetic Coordinate):大地测量中以参考椭球面为基准面的坐标。地面点P的位置用大地经度L、大地纬度B和大地高H表示。当点在参考椭球面上时,仅用大地经度和大地纬度表示。大地经度是通过该点的大地子午面与起始大地子午面之间的夹角,大地纬度是通过该点的法线与赤道面的夹角,大地高是地面点沿法线到参考椭球面的距离。地理坐标系,是以经纬度为地图的存储单位的。很明显,Geographic coordinate syst
em是球面坐标系统。我们要将地球上的数字化信息存放到球面坐标系统上,如何进行操作
呢?地球是一个不规则的椭球,如何将数据信息以科学的方法存放到椭球上?这必然要求
我们找到这样的一个椭球体。这样的椭球体具有特点:可以量化计算的。具有长半轴,短
半轴,偏心率。地理坐标:为球面坐标。 参考平面地是 椭球面。坐标单位:经纬度
大地坐标:为平面坐标。参考平面地是 水平面      坐标单位:米、千米等。

地理坐标转换到大地坐标的过程可理解为投影。   (投影:将不规则的地球曲面转换为平面)
在ArcGIS中预定义了两套坐标系:地理坐标系(Geographic coordinate system)投影坐标系(Projected coordinate system),

1、首先理解地理坐标系(Geographic coordinate system),Geographic coordinate system直译为
地理坐标系统,是以经纬度为地图的存储单位的。很明显,Geographic coordinate syst
em是球面坐标系统。我们要将地球上的数字化信息存放到球面坐标系统上,如何进行操作
呢?地球是一个不规则的椭球,如何将数据信息以科学的方法存放到椭球上?这必然要求
我们找到这样的一个椭球体。这样的椭球体具有特点:可以量化计算的。具有长半轴,短
半轴,偏心率。以下几行便是Krasovsky_1940椭球及其相应参数。
Spheroid: Krasovsky_1940
Semimajor Axis: 6378245.000000000000000000
Semiminor Axis: 6356863.018773047300000000
Inverse Flattening(扁率): 298.300000000000010000
然而有了这个椭球体以后还不够,还需要一个大地基准面将这个椭球定位。在坐标系统描
述中,可以看到有这么一行:
Datum: D_Beijing_1954
表示,大地基准面是D_Beijing_1954。
--------------------------------------------------------------------------------
有了Spheroid和Datum两个基本条件,地理坐标系统便可以使用。
完整参数:
Alias:
Abbreviation:
Remarks:
Angular Unit: Degree (0.017453292519943299)
Prime Meridian(起始经度): Greenwich (0.000000000000000000)
Datum(大地基准面): D_Beijing_1954
Spheroid(参考椭球体): Krasovsky_1940
Semimajor Axis: 6378245.000000000000000000
Semiminor Axis: 6356863.018773047300000000
Inverse Flattening: 298.300000000000010000


2、接下来便是Projection coordinate system(投影坐标系统),首先看看投影坐
标系统中的一些参数。
Projection: Gauss_Kruger
Parameters:
False_Easting: 500000.000000
False_Northing: 0.000000
Central_Meridian: 117.000000
Scale_Factor: 1.000000
Latitude_Of_Origin: 0.000000
Linear Unit: Meter (1.000000)
Geographic Coordinate System:
Name: GCS_Beijing_1954
Alias:
Abbreviation:
Remarks:
Angular Unit: Degree (0.017453292519943299)
Prime Meridian: Greenwich (0.000000000000000000)
Datum: D_Beijing_1954
Spheroid: Krasovsky_1940
Semimajor Axis: 6378245.000000000000000000
Semiminor Axis: 6356863.018773047300000000
Inverse Flattening: 298.300000000000010000
从参数中可以看出,每一个投影坐标系统都必定会有Geographic Coordinate System。
投影坐标系统,实质上便是平面坐标系统,其地图单位通常为米。
那么为什么投影坐标系统中要存在坐标系统的参数呢?
这时候,又要说明一下投影的意义:将球面坐标转化为平面坐标的过程便称为投影。
好了,投影的条件就出来了:
a、球面坐标
b、转化过程(也就是算法)
也就是说,要得到投影坐标就必须得有一个“拿来”投影的球面坐标,然后才能使用算法
去投影!
即每一个投影坐标系统都必须要求有Geographic Coordinate System参数。

关于北京54和西安80是我们使用最多的坐标系
        先简单介绍高斯-克吕格投影的基本知识,了解就直接跳过,我国大中比例尺地图均采用高斯-克吕格投影,其通常是按6度和3度分带投影,1:2.5万-1:50万比例尺地形图采用经差6度分带,1:1万比例尺的地形图采用经差3度分带。具体分带法是:6度分带从本初子午线开始,按经差6度为一个投影带自西向东划分,全球共分60个投影带,带号分别为1-60;3度投影带是从东经1度30秒经线开始,按经差3度为一个投影带自西向东划分,全球共分120个投影带。为了便于地形图的测量作业,在高斯-克吕格投影带内布置了平面直角坐标系统,具体方法是,规定中央经线为X轴,赤道为Y轴,中央经线与赤道交点为坐标原点,x值在北半球为正,南半球为负,y值在中央经线以东为正,中央经线以西为负。由于我国疆域均在北半球,x值均为正值,为了避免y值出现负值,规定各投影带的坐标纵轴均西移500km,中央经线上原横坐标值由0变为500km。为了方便带间点位的区分,可以在每个点位横坐标y值的百千米位数前加上所在带号,如20带内A点的坐标可以表示为YA=20 745 921.8m。
    在Coordinate Systems\Projected Coordinate Systems\Gauss Kruger\Beijing 1954目录中,我们可以看到四种不同的命名方式:
    Beijing 1954 3 Degree GK CM 75E.prj
    Beijing 1954 3 Degree GK Zone 25.prj
    Beijing 1954 GK Zone 13.prj
    Beijing 1954 GK Zone 13N.prj
    对它们的说明分别如下:
    三度分带法的北京54坐标系,中央经线在东75度的分带坐标,横坐标前不加带号
    三度分带法的北京54坐标系,中央经线在东75度的分带坐标,横坐标前加带号
    六度分带法的北京54坐标系,分带号为13,横坐标前加带号
    六度分带法的北京54坐标系,分带号为13,横坐标前不加带号
    在Coordinate Systems\Projected Coordinate Systems\Gauss Kruger\Xian 1980目录中,文件命名方式又有所变化:
    Xian 1980 3 Degree GK CM 75E.prj
    Xian 1980 3 Degree GK Zone 25.prj
    Xian 1980 GK CM 75E.prj
    Xian 1980 GK Zone 13.prj
    西安80坐标文件的命名方式、含义和北京54前两个坐标相同,但没有出现“带号+N”这种形式,为什么没有采用统一的命名方式?让人看了有些费解。


=======================================
          大地坐标(Geodetic Coordinate):大地测量中以参考椭球面为基准面的坐标。地面点P的位置用大地经度L、大地纬度B和大地高H表示。当点在参考椭球面上时,仅用大地经度和大地纬度表示。大地经度是通过该点的大地子午面与起始大地子午面之间的夹角,大地纬度是通过该点的法线与赤道面的夹角,大地高是地面点沿法线到参考椭球面的距离。
     方里网:是由平行于投影坐标轴的两组平行线所构成的方格网。因为是每隔整公里绘出坐标纵线和坐标横线,所以称之为方里网,由于方里线同时 又是平行于直角坐标轴的坐标网线,故又称直角坐标网。
在1:1万——1:20万比例尺的地形图上,经纬线只以图廓线的形式直接表现出来,并在图角处注出相应度数。为了在用图时加密成 网,在内外图廓间还绘有加密经纬网的加密分划短线(图式中称“分度带”),必要时对应短线相连就可以构成加密的经纬线网。1:2 5万地形图上,除内图廓上绘有经纬网的加密分划外,图内还有加密用的十字线。
我国的1:50万——1:100万地形图,在图面上直接绘出经纬线网,内图廓上也有供加密经纬线网的加密分划短线。
直角坐标网的坐标系以中央经线投影后的直线为X轴,以赤道投影后的直线为Y轴,它们的交点为坐标原点。这样,坐标系中就出现了四 个象限。纵坐标从赤道算起向北为正、向南为负;横坐标从中央经线算起,向东为正、向西为负。
       虽然我们可以认为方里网是直角坐标,大地坐标就是球面坐标。但是我们在一副地形图上经常见到方里网和经纬度网,我们很习惯的称经纬度网为大地坐标,这个时候的大地坐标不是球面坐标,她与方里网的投影是一样的(一般为高斯投影),也是平面坐标

北京54和西安80是我国主要使用的两种坐标系统,它们其实指的是两个Datum的概念。因 此,北京54和西安80即可以指大地坐标系统(GCS),又可以指投影坐标系统(PCS)。我们 先来看看ArcGIS中对于北京54在GCS中的定义:
Angular Unit: Degree (0.017453292519943299)
Prime Meridian: Greenwich (0.000000000000000000)
Datum: D_Beijing_1954
  Spheroid: Krasovsky_1940
    Semimajor Axis: 6378245.000000000000000000
    Semiminor Axis: 6356863.018773047300000000
Inverse Flattening: 298.300000000000010000
可以看到,Datum是D_Beijing_1954。北京54使用的是克拉索夫斯基椭球,大地原点在西 伯利亚。而西安80使用的是IAG 75椭球,大地原点在陕西泾阳。再来看北京54在PCS中的定义 :
Projection: Gauss_Kruger
False_Easting: 500000.000000
False_Northing: 0.000000
Central_Meridian: 117.000000
Scale_Factor: 1.000000
Latitude_Of_Origin: 0.000000
Linear Unit: Meter (1.000000)
 
Geographic Coordinate System: GCS_Beijing_1954
Angular Unit: Degree (0.017453292519943299)
Prime Meridian: Greenwich (0.000000000000000000)
Datum: D_Beijing_1954
  Spheroid: Krasovsky_1940
    Semimajor Axis: 6378245.000000000000000000
    Semiminor Axis: 6356863.018773047300000000
Inverse Flattening: 298.300000000000010000
可以看到,一个PCS必然包含一个GCS的定义,也就是说PCS=GCS+地图投影。我国的基本比 例尺地形图(1:5千,1:1万,1:2.5 万,1:5万,1:10万,1:25万,1:50万,1:100万)中,大 于等于50万的均采用高斯-克吕格投影,又叫横轴墨卡托投影 (Transverse Mercator);小于 50万的地形图采用正轴等角割圆锥投影,又叫兰勃特投影(Lambert Conformal Conic);海上 小于50万的地形图多用正轴等角圆柱投影,又叫墨卡托投影(Mercator)。在ArcGIS软件中, 北京54和西安80的PCS坐标都是使用高斯-克吕格投影。

世界大地坐标系(world geodetic system s4,WGSs4)是美国国防部为适应全球地图编制和空间技术发展的需要,利用全球观测数据,按综合法推算,建立的一种地球参考系和地心坐标系。它有WGS60、WGS72、WGS84等。是全球定位系统(GPS)的参考构架。wGS 84不仅给出了地球正常重力场的4个基本参数(a、03、GM、J,),还给出了展开到l80阶的位系数模型以及与一些地区的转换关系。WGS84要求地球质心与圆点重合,2轴与地球自转轴一致,并通过协议地极(CTP)。X轴通过国际时间局(BIH)定义的子午面。WGS-84(World Geodetic System,1984年)是美国国防部研制确定的大地坐标系,是一种国际上采用的地心坐标系。其坐标系的几何定义是:原点在地球质心,z轴指向 BIH 1984.0定义的协议地球极(CTP)方向,X轴指向 BIH 1984.0 的零子午面和 CTP赤道的交点。Y轴与 Z、X轴构成右手坐标系(如图所示)。
WGs-84椭球及有关常数:
对应于 WGS-8大地坐标系有一个WGS-84椭球,其常数采用 IUGG第 17届大会大地测量常数的推荐值。下面给出WGS-84椭球两个最常用的几何常数:
长半轴: 6378137± 2(m)
扁率: 1:298.257223563

我们通常称谓的北京54坐标系、西安80坐标系实际上指的是我国的两个大地基准面。我国参照前苏联从1953年起采用克拉索夫斯基(Krassovsky)椭球体建立了我国的北京54坐标系,1978年采用国际大地测量协会推荐的1975地球椭球体建立了我国新的大地坐标系--西安80坐标系,目前大地测量基本上仍以北京54坐标系作为参照,北京54与西安80坐标之间的转换可查阅国家测绘局公布的对照表。 WGS1984基准面采用WGS84椭球体,它是一地心坐标系,即以地心作为椭球体中心,目前GPS测量数据多以WGS1984为基准。

上述3个椭球体参数如下:

椭球体与基准面之间的关系是一对多的关系,也就是基准面是在椭球体基础上建立的,但椭球体不能代表基准面,同样的椭球体能定义不同的基准面,如前苏联的Pulkovo 1942、非洲索马里的Afgooye基准面都采用了Krassovsky椭球体,但它们的基准面显然是不同的。

地图投影是将地图从球面转换到平面的数学变换,如果有人说:该点北京54坐标值为X=4231898,Y=21655933,实际上指的是北京54基准面下的投影坐标,也就是北京54基准面下的经纬度坐标在直角平面坐标上的投影结果。

WGS-84坐标系即WGS-84(World Geodetic System,1984年)是美国国防部研制确定的大地坐标系,其坐标系的几何定义是:原点在地球质心,z轴指向 BIH 1984.0定义的协议地球极(CTP)方向,X轴指向 BIH 1984.0 的零子午面和 CTP赤道的交点。Y轴与 Z、X轴构成右手坐标系

使用道具 举报

回复
论坛徽章:
18
授权会员
日期:2005-10-30 17:05:33美羊羊
日期:2015-03-04 14:48:58马上有车
日期:2014-02-18 16:41:112014年新春福章
日期:2014-02-18 16:41:11紫蜘蛛
日期:2012-02-21 15:06:16嫦娥
日期:2012-02-21 15:05:212012新春纪念徽章
日期:2012-01-04 11:49:54ITPUB十周年纪念徽章
日期:2011-11-01 16:20:282009日食纪念
日期:2009-07-22 09:30:00数据库板块每日发贴之星
日期:2009-02-26 01:01:03
 楼主| 发表于 2014-2-10 20:53 | 显示全部楼层
DOM-数字正射影像图  数字正射影像图(DOM,DigitalOrthophotoMap):是对航空(或航天)像片进行数字微分纠正和镶嵌,按一定图幅范围裁剪生成的数字正射影像集。它是同时具有地图几何精度和影像特征的图像。DOM具有精度高、信息丰富、直观逼真、获取快捷等优点,可作为地图分析背景控制信息,也可从中提取自然资源和社会经济发展的历史信息或最新信息,为防治灾害和公共设施建设规划等应用提供可靠依据;还可从中提取和派生新的信息,实现地图的修测更新。评价其它数据的精度、现实性和完整性都很优良。合肥市数字正射影像图DOM.jpg。   该图的技术特征为:数字正射影像,地图分幅、投影、精度、坐标系统、与同比例尺地形图一致,图像分辨率为输入大于400dpi;输出大于250dpi。由于DOM是数字的,在计算机上可局部开发放大,具有良好的判读性能与量测性能和管理性能等,如用农村土地发证,指认宗界地界比并数字化其点位坐标、土地利用调查等等。DOM可作为独立的背景层与地名注名,图廓线公里格、公里格网及其它要素层复合,制作各种专题图。编辑本段DOM-生产技术DOM制作的主要技术方法:采用航空像片或高分辨率卫星遥感图像数据等。利用:1)VintuoZo系统数字摄影测量工作站。VintuoZo系统可以利用对DEM的检测及编辑,来提高DOM的精度。还可以通过像片间、图幅间进行灰度接边,以保证影像色调的一致性。2)采用jx-4DPW系统。jx-4DPW是一套基于WINDOWSNT的数字摄影测量系统。因其对DEM的编辑采用的是单点编辑,而且该系统还具有对DOM的零立体检查的功能,故其DOM的精度较高。基于DEM的单片数字微分纠正VintuoZo系统具有单片数字微分纠正的模块。   数字正射影像图的应用洪水监测、河流变迁、旱情监测;   农业估产(精准农业);土地覆盖与土地利用土地资源的动态监测;   荒漠化监测与森林监测(成林害虫);   海岸线保护;   生态变化监测。  DOM的优势主要表现在:易用性强,使用DOM时,将把所有的XML文档信息都存于内存中,并且遍历简单,支持XPath,增强了易用性。  DOM的缺点主要表现在:效率低,解析速度慢,内存占用量过高,对于大文件来说几乎不可能使用。另外效率低还表现在大量的消耗时间,因为使用DOM进行解析时,将为文档的每个element、attribute、processing-instrUCtion和comment都创建一个对象,这样在DOM机制中所运用的大量对象的创建和销毁无疑会影响其效率。   DEM  (Digital Elevation Model,缩写DEM)是一定范围内规则格网点的平面坐标(X,Y)及其高程(Z)的数据集,它主要是描述区域地貌形态的空间分布,是通过等高线或相似立体模型进行数据采集(包括采样和量测),然后进行数据内插而形成的。DEM是对地貌形态的虚拟表示,可派生出等高线、坡度图等信息,也可与DOM或其它专题数据叠加,用于与地形相关的分析应用,同时它本身还是制作DOM的基础数据。  DEM是用一组有序数值建立DEM的方法有多种Digital Elevation Model(DEM) 数字高程模型。GIS、地图学中的常用术语。 编辑本段DEM是用一组有序数值  DEM是用一组有序数值阵列形式表示地面高程的一种实体地面模型,是数字地形模型(Digital Terrain Model,简称DTM)的一个分支。一般认为,DTM是描述包括高程在内的各种地貌因子,如坡度、坡向、坡度变化率等因子在内的线性和非线性组合的空间分布,其中DEM是零阶单纯的单项数字地貌模型,其他如坡度、坡向及坡度变化率等地貌特性可在DEM的基础上派生。DTM的另外两个分支是各种非地貌特性的以矩阵形式表示的数字模型,包括自然地理要素以及与地面有关的社会经济及人文要素,如土壤类型、土地利用类型、岩层深度、地价、商业优势区等等。实际上DTM是栅格数据模型的一种。它与图像的栅格表示形式的区别主要是:图像是用一个点代表整个像元的属性,而在DTM中,格网的点只表示点的属性,点与点之间的属性可以通过内插计算获得。 编辑本段建立DEM的方法有多种  从数据源及采集方式讲有:(1)直接从地面测量,例如用GPS、全站仪、野外测量等;(2)根据航空或航天影像,通过摄影测量途径获取,如立体坐标仪观测及空三加密法、解析测图、数字摄影测量等等;(3)从现有地形图上采集,如格网读点法、数字化仪手扶跟踪及扫描仪半自动采集然后通过内插生成DEM等方法。DEM内插方法很多,主要有分块内插、部分内插和单点移面内插三种。目前常用的算法是通过等高线和高程点建立不规则的三角 网(Triangular IrregularNetwork, 简称TIN)。然后在TIN基础上通过线性和双线性内插建DEM。   由于DEM描述的是地面高程信息,它在测绘、水文、气象、地貌、地质、土壤、工程建设、通讯、气象、军事等国民经济和国防建设以及人文和自然科学领域有着广泛的应用。如在工程建设上,可用于如土方量计算、通视分析等;在防洪减灾方面,DEM是进行水文分析如汇水区分析、水系网络分析、降雨分析、蓄洪计算、淹没分析等的基础; 在无线通讯上,可用 于蜂窝电话的基站分析等等   DTM  数字地形模型(DTM, Digital Terrain Model)最初是为了高速公路的自动设计提出来的(Miller,1956)。此后,它被用于各种线路选线(铁路、公路、输电线)的设计以及各种工程的面积、体积、坡度计算,任意两点间的通视判断及任意断面图绘制。在测绘中被用于绘制等高线、坡度坡向图、立体透视图,制作正射影像图以及地图的修测。在遥感应用中可作为分类的辅助数据。它还是地理信息系统的基础数据,可用于土地利用现状的分析、合理规划及洪水险情预报等。在军事上可用于导航及导弹制导、作战电子沙盘等。对DTM的研究包括DTM的精度问题、地形分类、数据采集、DTM的粗差探测、质量控制、数据压缩、DTM应用以及不规则三角网DTM的建立与应用等。   1.1 DTM和DEM 从数学的角度,高程模型是高程Z关于平面坐标X,Y两个自变量的连续函数,数字高程模型(DEM)只是它的一个有限的离散表示。高程模型最常见的表达是相对于海平面的海拔高度,或某个参考平面的相对高度,所以高程模型又叫地形模型。实际上地形模型不仅包含高程属性,还包含其它的地表形态属性,如坡度、坡向等。 数字地形模型是地形表面形态属性信息的数字表达,是带有空间位置特征和地形属性特征的数字描述。数字地形模型中地形属性为高程时称为数字高程模型(Digital Elevation Model,简称DEM)。高程是地理空间中的第三维坐标。由于传统的地理信息系统的数据结构都是二维的,数字高程模型的建立是一个必要的补充。DEM通常用地表规则网格单元构成的高程矩阵表示,广义的DEM还包括等高线、三角网等所有表达地面高程的数字表示。在地理信息系统中,DEM是建立DTM的基础数据,其它的地形要素可由DEM直接或间接导出,称为“派生数据”,如坡度、坡向。
名人堂:众名人带你感受他们的驱动人生
马云任志强李嘉诚柳传志史玉柱
表示法  数学方法 用数学方法来表达,可以采用整体拟合方法,即根据区域所有的高程点数据,用傅立叶级数和高次多项式拟合统一的地面高程曲面。也可用局部拟合方法,将地表复杂表面分成正方形规则区域或面积大致相等的不规则区域进行分块搜索,根据有限个点进行拟合形成高程曲面。 图形方法  线模式 等高线是表示地形最常见的形式。其它的地形特征线也是表达地面高程的重要信息源,如山脊线、谷底线、海岸线及坡度变换线等。   点模式 用离散采样数据点建立DEM是DEM建立常用的方法之一。数据采样可以按规则格网采样,可以是密度一致的或不一致的;可以是不规则采样,如不规则三角网、邻近网模型等;也可以有选择性地采样,采集山峰、洼坑、隘口、边界等重要特征点。 DEM的表示方法 在地理信息系统中,DEM最主要的三种表示模型是:规则格网模型,等高线模型和不规则三角网模型。  主要表示模型 规则格网模型  规则网格,通常是正方形,也可以是矩形、三角形等规则网格。规则网格将区域空间切分为规则的格网单元,每个格网单元对应一个数值。数学上可以表示为一个矩阵,在计算机实现中则是一个二维数组。每个格网单元或数组的一个元素,对应一个高程值,如图9-2所示。 格网DEM 对于每个格网的数值有两种不同的解释。第一种是格网栅格观点,认为该格网单元的数值是其中所有点的高程值,即格网单元对应的地面面积内高程是均一的高度,这种数字高程模型是一个不连续的函数。第二种是点栅格观点,认为该网格单元的数值是网格中心点的高程或该网格单元的平均高程值,这样就需要用一种插值方法来计算每个点的高程。计算任何不是网格中心的数据点的高程值,使用周围4个中心点的高程值,采用距离加权平均方法进行计算,当然也可使用样条函数和克里金插值方法。 规则格网的高程矩阵,可以很容易地用计算机进行处理,特别是栅格数据结构的地理信息系统。它还可以很容易地计算等高线、坡度坡向、山坡阴影和自动提取流域地形,使得它成为DEM最广泛使用的格式,目前许多国家提供的DEM数据都是以规则格网的数据矩阵形式提供的。格网DEM的缺点是不能准确表示地形的结构和细部,为避免这些问题,可采用附加地形特征数据,如地形特征点、山脊线、谷底线、断裂线,以描述地形结构。 格网DEM的另一个缺点是数据量过大,给数据管理带来了不方便,通常要进行压缩存储。DEM数据的无损压缩可以采用普通的栅格数据压缩方式,如游程编码、块码等,但是由于DEM 数据反映了地形的连续起伏变化,通常比较“破碎”,普通压缩方式难以达到很好的效果;因此对于网格DEM数据,可以采用哈夫曼编码进行无损压缩;有时,在牺牲细节信息的前提下,可以对网格DEM进行有损压缩,通常的有损压缩大都是基于离散余弦变换(Discrete Cosine Transformation,DCT)或小波变换(Wavelet Transformation)的,由于小波变换具有较好的保持细节的特性,近年来将小波变换应用于DEM数据处理的研究较多。 等高线模型  等高线模型表示高程,高程值的集合是已知的,每一条等高线对应一个已知的高程值,这样一系列等高线集合和它们的高程值一   起就构成了一种地面高程模型。如图9-3所示。 图9-3:等高线 等高线通常被存成一个有序的坐标点对序列,可以认为是一条带有高程值属性的简单多边形或多边形弧段。由于等高线模型只表达了区域的部分高程值,往往需要一种插值方法来计算落在等高线外的其它点的高程,又因为这些点是落在两条等高线包围的区域内,所以,通常只使用外包的两条等高线的高程进行插值。 等高线通常可以用二维的链表来存储。另外的一种方法是用图来表示等高线的拓扑关系,将等高线之间的区域表示成图的节点,用边表示等高线本身。此方法满足等高线闭合或与边界闭合、等高线互不相交两条拓扑约束。这类图可以改造成一种无圈的自由树。下图为一个等高线图和它相应的自由树(图9-4)。其它还有多种基于图论的表示方法。图9-4:等高线和相应的自由树 不规则三角网(TIN)模型  尽管规则格网DEM在计算和应用方面有许多优点,但也存在许多难以克服的缺陷: 1)在地形平坦的地方,存在大量的数据冗余; 2)在不改变格网大小的情况下,难以表达复杂地形的突变现象; 3)在某些计算,如通视问题,过分强调网格的轴方向。 不规则三角网(Triangulated Irregular Network, TIN)是另外一种表示数字高程模型的方法[Peuker等,1978],它既减少规则格网方法带来的数据冗余,同时在计算(如坡度)效率方面又优于纯粹基于等高线的方法。 TIN模型根据区域有限个点集将区域划分为相连的三角面网络,区域中任意点落在三角面的顶点、边上或三角形内。如果点不在顶点上,该点的高程值通常通过线性插值的方法得到(在边上用边的两个顶点的高程,在三角形内则用三个顶点的高程)。所以TIN是一个三维空间的分段线性模型,在整个区域内连续但不可微。TIN的数据存储方式比格网DEM复杂,它不仅要存储每个点的高程,还要存储其平面坐标、节点连接的拓扑关系,三角形及邻接三角形等关系。TIN模型在概念上类似于多边形网络的矢量拓扑结构,只是TIN模型不需要定义“岛”和“洞”的拓扑关系。 有许多种表达TIN拓扑结构的存储方式,一个简单的记录方式是:对于每一个三角形、边和节点都对应一个记录,三角形的记录包括三个指向它三个边的记录的指针;边的记录有四个指针字段,包括两个指向相邻三角形记录的指针和它的两个顶点的记录的指针;也可以直接对每个三角形记录其顶点和相邻三角形(图9-5)。每个节点包括三个坐标值的字段,分别存储X,X,Z坐标。这种拓扑网络结构的特点是对于给定一个三角形查询其三个顶点高程和相邻三角形所用的时间是定长的,在沿直线计算地形剖面线时具有较高的效率。当然可以在此结构的基础上增加其它变化,以提高某些特殊运算的效率,例如在顶点的记录里增加指向其关联的边的指针。 图9-5:三角网的一种存储方式 不规则三角网数字高程由连续的三角面组成,三角面的形状和大小取决于不规则分布的测点,或节点的位置和密度。不规则三角网与高程矩阵方法不同之处是随地形起伏变化的复杂性而改变采样点的密度和决定采样点的位置,因而它能够避免地形平坦时的数据冗余,又能按地形特征点如山脊、山谷线、地形变化线等表示数字高程特征。 层次模型  层次地形模型(Layer of Details,LOD)是一种表达多种不同精度水平的数字高程模型。大多数层次模型是基于不规则三角网模型的,通常不规则三角网的数据点越多精度越高,数据点越少精度越低,但数据点多则要求更多的计算资源。所以如果在精度满足要求的情况下,最好使用尽可能少的数据点。层次地形模型允许根据不同的任务要求选择不同精度的地形模型。层次模型的思想很理想,但在实际运用中必须注意几个重要的问题: 1)层次模型的存储问题,很显然,与直接存储不同,层次的数据必然导致数据冗
余。2)自动搜索的效率问题,例如搜索一个点可能先在最粗的层次上搜索,再在更细的层次上搜索,直到找到该点。 3)三角网形状的优化问题,例如可以使用Delaunay三角剖分。 4)模型可能允许根据地形的复杂程度采用不同详细层次的混合模型,例如,对于飞行模拟,近处时必须显示比远处更为详细的地形特征。 5)在表达地貌特征方面应该一致,例如,如果在某个层次的地形模型上有一个明显的山峰,在更细层次的地形模型上也应该有这个山峰。 这些问题目前还没有一个公认的最好的解决方案,仍需进一步深入研究。 模型转换  在实际应用中,DEM模型之间可以相互转换。大部分DEM数据都是规则格网DEM,但由于规则格网DEM的数据量大而不便存储,也可能由于某些分析计算需要使用TIN模型的DEM,如进行通视分析。此时需要将格网DEM转成TIN模型的DEM。反之,如果已有TIN模型的DEM数据,为满足某种应用的需要,也需要转成规则格网的DEM。不规则点集生成TIN对于不规则分布的高程点,可以形式化地描述为平面的一个无序的点集P,点集中每个点p对应于它的高程值。将该点集转成TIN,最常用的方法是Delaunay三角剖分方法。生成TIN的关键是Delaunay三角网的产生算法,下面先对Delaunay三角网和它的偶图Voronoi图作简要的描述。 Voronoi图,又叫泰森多边形或Dirichlet图,它由一组连续多边形组成,多边形的边界是由连接两邻点线段的垂直平分线组成。N个在平面上有区别的点,按照最近邻原则划分平面:每个点与它的最近邻区域相关联。Delaunay三角形是由与相邻Voronoi多边形共享一条边的相关点连接而成的三角形。Delaunay三角形的外接圆圆心是与三角形相关的Voronoi多边形的一个顶点。Delaunay三角形是Voronoi图的偶图,如图9-6所示。 图9-6:Delaunay三角网与Voronoi图 对于给定的初始点集P,有多种三角网剖分方式,而Delaunay三角网有以下特性: 1)其Delaunay三角网是唯一的; 2)三角网的外边界构成了点集P的凸多边形“外壳”; 3)没有任何点在三角形的外接圆内部,反之,如果一个三角网满足此条件,那么它就是Delaunay三角网。 4)如果将三角网中的每个三角形的最小角进行升序排列,则Delaunay三角网的排列得到的数值最大,从这个意义上讲,Delaunay三角网是“最接近于规则化”的三角网。  下面简要介绍Delaunay三角形产生的基本准则: Delaunay三角形产生准则的最简明的形式是:任何一个Delaunay三角形的外接圆的内部不能包含其它任何点[Delaunay 1934]。Lawson[1972]提出了最大化最小角原则:每两个相邻的三角形构成的凸四边形的对角线,在相互交换后,六个内角的最小角不再增大。Lawson [1977]又提出了一个局部优化过程LOP(Local Optimization Procedure)方法。如图9-7所示。先求出包含新插入点p的外接圆的三角形,这种三角形称为影响三角形(Influence Triangulation)。删除影响三角形的公共边(图b中粗线),将p与全部影响三角形的顶点连接,完成p点在原Delaunay三角形中的插入。 向Delaunay三角形中插入点 将该点集转成TIN,最常用的方法是Delaunay三角剖分方法,生成过程分两步完成: 1)利用P中点集的平面坐标产生Delaunay三角网; 2)给Delaunay三角形中的节点赋予高程值。

使用道具 举报

回复
论坛徽章:
18
授权会员
日期:2005-10-30 17:05:33美羊羊
日期:2015-03-04 14:48:58马上有车
日期:2014-02-18 16:41:112014年新春福章
日期:2014-02-18 16:41:11紫蜘蛛
日期:2012-02-21 15:06:16嫦娥
日期:2012-02-21 15:05:212012新春纪念徽章
日期:2012-01-04 11:49:54ITPUB十周年纪念徽章
日期:2011-11-01 16:20:282009日食纪念
日期:2009-07-22 09:30:00数据库板块每日发贴之星
日期:2009-02-26 01:01:03
 楼主| 发表于 2014-2-11 20:24 | 显示全部楼层
http://superapple.blog.163.com/b ... 356201293123059659/
要/glovis.usgs.gov 注册账号 (注册账号和一般网站没什么区别就提示是英文的)
然后登陆  
网站的左上角有一个collection选项 点击可以选择传感器的类型(必选)
后边的resolution是调整图像大小的一般默认大小就可以  根据自己需要调整
再后边的的自己点击浏览尝试就可以 了  我没用到过
至于带号知不知道无所谓 可以直接在右边的窗口点击你要下载的位置  然后左边就显示带号当然自己知道更好  不同传感器带号也不同
选中图像后 可以在左边窗口选择 图像的质量 如云量的多少  成像时间  但不一地有你想要的  需要适当放宽要求
然后点左下角的add  如果图像的后边出现类似大拇指的小图标  则说明有数据 如果没有就是没数据 需要从新选择图像  
然后点 send to cart  浏览器会自动弹出一个窗口  然后到里面现在就好了  
电脑需要java平台的支持
good luck
p://cs.rsgs.ac.cn/cs_cn/query/query_map.asp

http://cs.rsgs.ac.cn/cs_cn/cshome.asp  存档卫星遥感数据目录服务系统
http://datamirror.csdb.cn/admin/dataLandsatMain.jsp  landsat
科学数据服务平台 84@Q  143

http://www.nrscc.gov.cn/nrscc/cyyfw/geosjgx2/zgygwxsjml/  国家遥感中心

http://ids.ceode.ac.cn/  对地观测共享计划

账号 SA  密码 87

http://www.cresda.com/n16/index.html  中巴!

sup  app         87

http://sjfw.sasmac.cn  资源三号 官网

http://glovis.usgs.gov/  美国地质勘探局usgs    875930834@qq.com      875930834lhb
http://earthexplorer.usgs.gov/  免费获取 很多很多很多


http://www.ceode.ac.cn/sjyhfw/sjdg/sjcx/ 对地中心

http://glcfapp.glcf.umd.edu:8080/esdi/index.jsp  马里兰大学
http://ftp.glcf.umd.edu/

http://www.ngdc.noaa.gov/dmsp/download.html  noaa 极轨卫星

http://glovis.usgs.gov/  美国地质调查局
http://glcf.umd.edu/data/   美国GCLF Global Land Cover Facility
MODIS 1B数据下载 L1B数据下载地址:http://ladsweb.nascom.nasa.gov/data/search.html

https://cross.restec.or.jp/cross ... tion?language=zh-CN  日本的网站
http://landsat.usgs.gov/index.php  landsat 8官方介绍

http://nfgis.nsdi.gov.cn/   国家基础地理信息系统
http://ngcc.sbsm.gov.cn/article/khly/lyzx/  国家基础地理信息中心
http://emuch.net/html/201108/3440621.html  小木屋 大家讨论组
http://www.3sjob.cn/article.php?id=3  网友讨论


http://www.sasmac.cn/portal_space/   国家地理测绘局卫星测绘应用中心
http://nnu.geodata.cn/Portal/index.jsp   长三角数据

http://cdc.cma.gov.cn/home.do  中国气象科学共享
http://www.geodata.cn/Portal/index.jsp  地球系统科学共享平台
http://www.geodata.cn/Portal/earthObservation/index.html  对地观测专题库,需要注册

http://www.nrscc.gov.cn/nrscc/index.html  国家遥感中心
http://satellite.cma.gov.cn/PortalSite/Ord/Satellite.aspx   国家卫星气象中心 风云系列

http://www.ers.ac.cn/  环境遥感

http://www.cgrc.ac.cn/index.aspx 中国地貌

http://srtm.csi.cgiar.org/  SRTM DEM

使用道具 举报

回复
论坛徽章:
18
授权会员
日期:2005-10-30 17:05:33美羊羊
日期:2015-03-04 14:48:58马上有车
日期:2014-02-18 16:41:112014年新春福章
日期:2014-02-18 16:41:11紫蜘蛛
日期:2012-02-21 15:06:16嫦娥
日期:2012-02-21 15:05:212012新春纪念徽章
日期:2012-01-04 11:49:54ITPUB十周年纪念徽章
日期:2011-11-01 16:20:282009日食纪念
日期:2009-07-22 09:30:00数据库板块每日发贴之星
日期:2009-02-26 01:01:03
 楼主| 发表于 2014-2-14 14:08 | 显示全部楼层
本帖最后由 liyihongcug 于 2014-2-16 16:58 编辑

http://max.book118.com/html/2013/0224/3375424.shtm[backcolor=white !important]前段时间做的地图拉框查询,仅供参考
[backcolor=white !important]/*在地图上拖动鼠标画矩形方法
[backcolor=white !important] * drawRectangleCallBack 为画矩形结束时回调函数
[backcolor=white !important] * */
[backcolor=white !important]XMap.prototype.drawRectangle = function (drawRectangleCallBack){
[backcolor=white !important]     //取消拉框放大缩小事件
[backcolor=white !important]      this.cancelZoomExtEvent();
[backcolor=white !important]      if(this.getDrawObject()&&this.getDrawObject()['object']){
[backcolor=white !important]              this.getDrawObject()['object'].setMap(null);
[backcolor=white !important]              delete this.getDrawObject()['object'];
[backcolor=white !important]      }
[backcolor=white !important]      var xMap = this;
[backcolor=white !important]      var rectangle = null;
[backcolor=white !important]      xMap.map.draggable = false;
[backcolor=white !important]      var mapMouseDownEvent = google.maps.event.addListener(xMap.map, 'mousedown', function(event) {
[backcolor=white !important]              var centerPoint = event.latLng;
[backcolor=white !important]              var latLngBounds =  new google.maps.LatLngBounds(centerPoint,centerPoint);
[backcolor=white !important]               rectangle= new google.maps.Rectangle({
[backcolor=white !important]                                                      bounds:latLngBounds,
[backcolor=white !important]                                                      fillColor: "#FF0000",
[backcolor=white !important]                                                      fillOpacity: 0.35,
[backcolor=white !important]                                                      strokeColor:'#FF0000',
[backcolor=white !important]                                                      strokeOpacity: 0.8,
[backcolor=white !important]                                                      strokeWeight: 2,
[backcolor=white !important]                                                      draggable: true,
[backcolor=white !important]                                                      map:xMap.map});
[backcolor=white !important]                var  mapMouseMoveEvent = google.maps.event.addListener(xMap.map, 'mousemove', function(event1) {
[backcolor=white !important]                      var latLngBoundsTemp =  new google.maps.LatLngBounds(centerPoint,event1.latLng);
[backcolor=white !important]                      rectangle.setBounds(latLngBoundsTemp);
[backcolor=white !important]                 });
[backcolor=white !important]                var circleMouseMoveEvent =  google.maps.event.addListener(rectangle, 'mousemove', function(event) {
[backcolor=white !important]                      var latLngBoundsTemp =  new google.maps.LatLngBounds(centerPoint,event.latLng);
[backcolor=white !important]                      rectangle.setBounds(latLngBoundsTemp);
[backcolor=white !important]                 });
[backcolor=white !important]                var mapMouseUpEvent = google.maps.event.addListener(xMap.map, 'mouseup', function(event) {
[backcolor=white !important]                       if(mapMouseDownEvent){
[backcolor=white !important]                           google.maps.event.removeListener(mapMouseDownEvent);
[backcolor=white !important]                       }
[backcolor=white !important]                      if(mapMouseMoveEvent){
[backcolor=white !important]                          google.maps.event.removeListener(mapMouseMoveEvent);
[backcolor=white !important]                      }
[backcolor=white !important]                      if(circleMouseMoveEvent){
[backcolor=white !important]                          google.maps.event.removeListener(circleMouseMoveEvent);
[backcolor=white !important]                      }
[backcolor=white !important]                      if(mapMouseUpEvent){
[backcolor=white !important]                          google.maps.event.removeListener(mapMouseUpEvent);
[backcolor=white !important]                      }
[backcolor=white !important]                      if(rectangleMouseUpEvent){
[backcolor=white !important]                          google.maps.event.removeListener(rectangleMouseUpEvent);
[backcolor=white !important]                      }
[backcolor=white !important]                      //确保地图mouseup 和对象mouseup 只执行一次
[backcolor=white !important]                      if(!xMap.map.draggable){
[backcolor=white !important]                          xMap.map.draggable = true;
[backcolor=white !important]                          xMap.getDrawObject()['object'] = rectangle;
[backcolor=white !important]                          if(drawRectangleCallBack){
[backcolor=white !important]                               drawRectangleCallBack();
[backcolor=white !important]                          }else{
[backcolor=white !important]                              alert('回调函数为空,请传入回调函数');
[backcolor=white !important]                          }
[backcolor=white !important]                      }
[backcolor=white !important]                  });
[backcolor=white !important]                  var rectangleMouseUpEvent = google.maps.event.addListener(rectangle, 'mouseup', function(event) {
[backcolor=white !important]                       if(mapMouseDownEvent){
[backcolor=white !important]                           google.maps.event.removeListener(mapMouseDownEvent);
[backcolor=white !important]                       }
[backcolor=white !important]                      if(mapMouseMoveEvent){
[backcolor=white !important]                          google.maps.event.removeListener(mapMouseMoveEvent);
[backcolor=white !important]                      }
[backcolor=white !important]                      if(circleMouseMoveEvent){
[backcolor=white !important]                          google.maps.event.removeListener(circleMouseMoveEvent);
[backcolor=white !important]                      }
[backcolor=white !important]                      if(mapMouseUpEvent){
[backcolor=white !important]                          google.maps.event.removeListener(mapMouseUpEvent);
[backcolor=white !important]                      }
[backcolor=white !important]                      if(rectangleMouseUpEvent){
[backcolor=white !important]                          google.maps.event.removeListener(rectangleMouseUpEvent);
[backcolor=white !important]                      }
[backcolor=white !important]                      //确保地图mouseup 和对象mouseup 只执行一次
[backcolor=white !important]                      if(!xMap.map.draggable){
[backcolor=white !important]                          xMap.map.draggable = true;
[backcolor=white !important]                          xMap.getDrawObject()['object'] = rectangle;
[backcolor=white !important]                          if(drawRectangleCallBack){
[backcolor=white !important]                               drawRectangleCallBack();
[backcolor=white !important]                          }else{
[backcolor=white !important]                              alert('回调函数为空,请传入回调函数');
[backcolor=white !important]                          }
[backcolor=white !important]                      }
[backcolor=white !important]                  });
[backcolor=white !important]       });
[backcolor=white !important]}http://bbs.csdn.net/topics/380136192

使用道具 举报

回复
论坛徽章:
18
授权会员
日期:2005-10-30 17:05:33美羊羊
日期:2015-03-04 14:48:58马上有车
日期:2014-02-18 16:41:112014年新春福章
日期:2014-02-18 16:41:11紫蜘蛛
日期:2012-02-21 15:06:16嫦娥
日期:2012-02-21 15:05:212012新春纪念徽章
日期:2012-01-04 11:49:54ITPUB十周年纪念徽章
日期:2011-11-01 16:20:282009日食纪念
日期:2009-07-22 09:30:00数据库板块每日发贴之星
日期:2009-02-26 01:01:03
 楼主| 发表于 2014-2-23 19:01 | 显示全部楼层

使用道具 举报

回复
论坛徽章:
18
授权会员
日期:2005-10-30 17:05:33美羊羊
日期:2015-03-04 14:48:58马上有车
日期:2014-02-18 16:41:112014年新春福章
日期:2014-02-18 16:41:11紫蜘蛛
日期:2012-02-21 15:06:16嫦娥
日期:2012-02-21 15:05:212012新春纪念徽章
日期:2012-01-04 11:49:54ITPUB十周年纪念徽章
日期:2011-11-01 16:20:282009日食纪念
日期:2009-07-22 09:30:00数据库板块每日发贴之星
日期:2009-02-26 01:01:03
 楼主| 发表于 2014-3-12 18:22 | 显示全部楼层
本帖最后由 liyihongcug 于 2014-4-11 19:52 编辑

gps经纬度的算法:
<?php
/**
* gps经纬度修正
*
* 功能说明:利用0.01精度校正库offset.dat文件修正中国地图经纬度偏移。
*         该校正适用于 Google map China, Microsoft map china ,MapABC 等,这些地图构成方法是一样的。
* 使用方法:
        $gps = new GpsOffset();
        echo $gps->geoLatLng($lat,$lng);
* 注意: 请在服务器开启offset.dat读取权限
* @author yanue (yanue@outlook.com)
* @version 1.0
* @copyright yanue.net
* @time 2013-06-30
*/

class GpsOffset {
    const datMax = 9813675;# 该文件最大数据为9813675条
    private $fp = null;
    /*
     * 构造函数,打开 offset.dat 文件并初始化类中的信息
     * @param string $filename
     * @return null
     */
    function __construct($filename = "offset.dat") {
        if (($this->fp = @fopen($filename, 'rb')) !== false) {
            //注册析构函数,使其在程序执行结束时执行
            register_shutdown_function(array(&$this, '__construct'));
        }
    }

    /*
     * 读取dat文件并查找偏移像素值
     * 说明:
     * dat文件结构:该文件为0.01精度校正数据,并以lng和lat递增形式组合.
     * 其中以8个字节为一组:
     * lng : 2字节经度,如12151表示121.51
     * lat : 2字节纬度,如3130表示31.30
     * x_off : 2字节地图x轴偏移像素值
     * y_off : 2字节地图y轴偏移像素值
     * 因此采用二分法并以lng+lat的值作为条件
     * 注意:请在服务器开启offset.dat读取权限
     *
     */
    private function fromEarthToMars($lat,$lng){
        $tmpLng=intval($lng * 100);
        $tmpLat=intval($lat * 100);
        $left = 0; //开始记录
        $right = self::datMax; //结束记录
        $searchLngLat = $tmpLng.$tmpLat;
        // 采用用二分法来查找查数据
        while($left <= $right){
            $recordCount =(floor(($left+$right)/2))*8; // 取半
            fseek ( $this->fp, $recordCount , SEEK_SET ); // 设置游标
            $c = fread($this->fp,8); // 读8字节
            $lng = unpack('s',substr($c,0,2));
            $lat = unpack('s',substr($c,2,2));
            $x = unpack('s',substr($c,4,2));
            $y = unpack('s',substr($c,6,2));
            $curLngLat=$lng[1].$lat[1];
            if ($curLngLat==$searchLngLat){
                fclose($this->fp);
                return array('x'=>$x[1],'y'=>$y[1]);
                break;
            }else if($curLngLat<$searchLngLat){
                $left=($recordCount/8) + 1;
            }else if($curLngLat>$searchLngLat){
                $right=($recordCount/8) - 1;
            }
        }
        fclose($this->fp);
        return false;
    }

    // 转换经纬度到
    public function geoLatLng($lat,$lng){
        $offset =$this->fromEarthToMars($lat,$lng);
        $lngPixel=$this->lngToPixel($lng,18)+$offset['x'];
        $latPixel=$this->latToPixel($lat,18)+$offset['y'];
        $mixLat = $this->pixelToLat($latPixel,18);
        $mixLng = $this->pixelToLng($lngPixel,18);
        return array('lat'=>$mixLat,'lng'=>$mixLng);
    }
    //经度到像素X值
    private function lngToPixel($lng,$zoom) {
        return ($lng+180)*(256<<$zoom)/360;
    }

    //纬度到像素Y值
    private function latToPixel($lat, $zoom) {
        $siny = sin($lat * pi() / 180);
        $y=log((1+$siny)/(1-$siny));
        return (128<<$zoom)*(1-$y/(2*pi()));
    }

    //像素X到经度
    private function pixelToLng($pixelX,$zoom){
        return $pixelX*360/(256<<$zoom)-180;
    }

    //像素Y到纬度
    private function pixelToLat($pixelY, $zoom) {
        $y = 2*pi()*(1-$pixelY /(128 << $zoom));
        $z = pow(M_E, $y);
        $siny = ($z -1)/($z +1);
        return asin($siny) * 180/pi();
    }

    public function __destruct(){
        if($this->fp){
            fclose($this->fp);
        }
        $this->fp = null;
    }
}http://wenku.baidu.com/view/2e4a34134431b90d6c85c756.html

使用道具 举报

回复
论坛徽章:
18
授权会员
日期:2005-10-30 17:05:33美羊羊
日期:2015-03-04 14:48:58马上有车
日期:2014-02-18 16:41:112014年新春福章
日期:2014-02-18 16:41:11紫蜘蛛
日期:2012-02-21 15:06:16嫦娥
日期:2012-02-21 15:05:212012新春纪念徽章
日期:2012-01-04 11:49:54ITPUB十周年纪念徽章
日期:2011-11-01 16:20:282009日食纪念
日期:2009-07-22 09:30:00数据库板块每日发贴之星
日期:2009-02-26 01:01:03
 楼主| 发表于 2014-3-20 14:55 | 显示全部楼层
function initialize(lat, lng) {  
  
        var fenway = new google.maps.LatLng(getCenterlat(), getCenterlng());  
        curlat = getCenterlat();  
        curlng = getCenterlng();  
        var panoramaOptions = {  
            position : fenway,  
            visible : true,  
            enableCloseButton : true,  
            pov : {  
                heading : 30,  
                pitch : 10,  
                zoom : 1  
            }  
        };  
        var panorama = null;  
  
        var sv = new google.maps.StreetViewService();  
        sv.getPanoramaByLocation(fenway, 50, function(data, status) {  
              
            document.getElementById("status").innerHTML = status.toString();  
              
            if (status == google.maps.StreetViewStatus.OK) {  
                panorama = new google.maps.StreetViewPanorama(document  
                        .getElementById("map"), panoramaOptions);  
                map.setStreetView(panorama);  
                // panorama.setVisible(true);  
                // 成功有街景  
                  
                  
                if (panorama) {  
                    document.getElementById("message").innerHTML = "The Stree111t is visible.....";  
                    if (panorama.getVisible()) {  
                        document.getElementById("message").innerHTML = "The Str3333eet is visible.....";  
                    }  
                }  
                // StreetViewPanorama 事件监听   
                google.maps.event.addListener(panorama,'closeclick',function() {  
                    // 无街景  
                     
                    document.getElementById("message").innerHTML = "The Street is closeclick.....";  
                });  
            }else{  
                // 无街景  
                  
            }  
        });  
  http://blog.csdn.net/sada09/article/details/8059795

使用道具 举报

回复

您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

DTCC2020中国数据库技术大会 限时9.5折

【架构革新 高效可控】2020年8月17日~19日第十一届中国数据库技术大会将在北京隆重召开。

大会设置2大主会场,20+技术专场,将邀请超百位行业专家,重点围绕数据架构、AI与大数据、传统企业数据库实践和国产开源数据库等内容展开分享和探讨,为广大数据领域从业人士提供一场年度盛会和交流平台。

http://dtcc.it168.com


大会官网>>
TOP技术积分榜 社区积分榜 徽章 团队 统计 知识索引树 积分竞拍 文本模式 帮助
  ITPUB首页 | ITPUB论坛 | 数据库技术 | 企业信息化 | 开发技术 | 微软技术 | 软件工程与项目管理 | IBM技术园地 | 行业纵向讨论 | IT招聘 | IT文档
  ChinaUnix | ChinaUnix博客 | ChinaUnix论坛
CopyRight 1999-2011 itpub.net All Right Reserved. 北京盛拓优讯信息技术有限公司版权所有 联系我们 
京ICP备09055130号-4  北京市公安局海淀分局网监中心备案编号:11010802021510 广播电视节目制作经营许可证:编号(京)字第1149号
  
快速回复 返回顶部 返回列表