转自:http://www.cnblogs.com/beniao/archive/2011/01/18/1933412.html

Microsoft SQL Server 2008 提供了全面性的空间支持,可让组织通过具空间功能的应用程序来无缝地取用、使用及扩展以位置为基础的数据,最后可协助用户做出更好的决策。空间分析是一项非常复杂的工作,包含一系列学术内容:地理、数学、天文、图形等。虽然在使用SQL Server 2008的空间特性中不必要深入研究关于地理、数学、天文以及图形等学科,但如果你想在学习或者是正式的项目开发中能够很好的使用空间特性,适当和有效的掌握一些关于空间信息方面的理论概念可谓理所当然。

一、什么是空间数据

  空间数据是指用来表示空间实体的位置、形状、大小及其分布特征诸多方面信息的数据,它可以用来描述来自现实世界的目标,它具有定位、定性、时间和空间关系等特性。定位是指在已知的坐标系里空间目标都具有唯一的空间位置;定性是指有关空间目标的自然属性,它伴随着目标的地理位置 ;时间是指空间目标是随时间的变化而变化;空间关系通常一般用拓扑关系表示。空间数据是一种用点、线、面以及实体等基本空间数据结构来表示人们赖以生存的自然世界的数据。

  来自百度百科的定义:用于描述有关空间实体的位置、形状和相互关系的数据,以坐标和拓扑关系的形式存储。

  地理服务的普遍性,和用户使用数据所采用的混合度的提高意味着这个空间信息只是合成到解决方案中的另一个组件,并且是作出更好决策和提供更高的价值服务的一个基础。SQL Server 2008通过引入新的空间数据类型提供了对地理数据的支持,你可以使用它来存储和操纵基于位置的信息,SQL server 2008中的空间支持可以帮助用户通过分析基于地理的位置数据来作出更好的决策。

二、地图上的空间数据

  空间数据提供了可以在不同领域的广泛使用的信息,比如地图、地图分析、空间分析、GPS定位、车辆监控等多行业领域。这里不分别详细介绍空间数据到各个行业领域的应用,主要介绍空间数据在地图上的应用为主。实际上地图上的空间对象是很复杂且不规则的对象,通常表现为一些复杂、不规则的几何图形,使用空间数据来解释就是:“近似他们实际的形状和位置的简单、或复杂的几何形状”。

        

  SQL Server 2008 主要支持三种类型的空间数据,用来表示空间信息的几何图形,分别为:点(Point)、线(LineString)和面(Polygon)。

  1、点(Point):点是几何的基本类型,用来表示空间上的一个位置。

  2、线(LineString):线条描述了空间上的两个点之间的距离,有两个端点,分别为:起止点(StartPoint)和终止点(EndPoint)。

  3、面(Polygon):面用来表示空间上的一块几何区域,可以是三角形、四边形等,也可以是不规则的任意几何图形块。

  在地图上的面(Polygon)通常可以在空间数据中用来表示群岛、湖泊、工厂、学校、政府、司法管理区域等一块地市区域,如下重庆市区县分布图所示:

        

三、坐标系统(Coordinate System)

  常用的坐标系为地理坐标系(Geograpic Coordinate System,简称GCS)和投影坐标系(Projected Coordinate System,简称PCS)。

  地理坐标系统(GCS)用一个三维的球面来确定地物在地球上的位置,地面点的地理坐标有经度、纬度、高程构成。地理坐标系统与选择的地球椭球体和大地基准面有关。椭球体定义了地球的形状,而大地基准面确定了椭球体的中心。地理空间中可以使用两个坐标值定义在地球表面上的任何位置,既地理经度和地理纬度,经度和纬度共同组成一个地理坐标点(Point),既:Point(latitude,longitude)。

        

        

  投影坐标系统(PCS)是根据某种映射关系,将地理坐标系统中由经纬度确定的三维球面坐标投影到二维的平面上所使用的坐标系统。在该坐标系统中,点的位置是由(x,y,z)坐标来确定的。由于投影坐标是将球面展会在平面上,因此不可避免会产生变形。这些变形包括3种:长度变形、角度变形以及面积变形。通常情况下投影转换都是在保证某种特性不变的情况下牺牲其他属性。根据变形的性质可分为等角投影、等面积投影等。

四、空间参考系统

  上面分别介绍了基于角坐标经度和纬度的地理坐标系统(GCS),以及使用X和Y的笛卡尔坐标的投影坐标系统(PCS)。无论是基于何种坐标系统,一组坐标始终只能表示坐标系统中的一个位置点,要想了解关于地球上的坐标系统的应用更多的知识,我们需要研究空间参考系统,既地球椭球体、基准、本初子午线、计量单位、投影等其他知识点。

  地球椭球体(Ellipsoid):即等角横切椭圆柱投影。假想用一个圆柱横切于地球椭球体的某一经线上,这条与圆柱面相切的经线,称中央经线。以中央经线为投影的对称轴,将东西各3°或1°30′的两条子午线所夹经差6°或3°的带状地区按数学法则、投影法则投影到圆柱面上,再展开成平面,即高斯-克吕格投影,简称高斯投影。这个狭长的带状的经纬线网叫做高斯-克吕格投影带。

  基准(Datum):大地基站设计用为最密合部分或全部大地水准面的数据模式。它由椭球体本身及椭球体和地表上一点视为原点之间关系来定义。此关系能以6个量来定义,既:经度、纬度、原点高度、原点垂线偏差之两分量及原点至某点的大地方位角。

  本初子午线(Prime Meriaian):0°经线,是计算东西经度的起点。1884年国际会议决定用通过英国格林威治(Greenwich)天文台子午仪中心的经线为本初子午线。1957年后,格林尼治天文台迁移台址。1968年国际上以国际协议原点(CIO)作为地极原点,经度起点实际上不变。

  计量单位(Unit):各种物理量都有它们的量度单位,并以选定的物质在规定条件显示的数量作为基本量度单位的标准,在不同时期和不同的学科中,基本量的选择何以不同。如物理学上以时间、长度、质量、温度、电流强度、发光强度、物质的量这7个物理单位为基本量,它们的单位依次为:秒、米 (单位)、千克、开尔文、安培、坎德拉、摩尔。

  投影(Projection):从初中数学的角度来说,一般地,用光线照射物体,在某个平面(地面、墙壁等)上得到的影子叫做物体的投影(projection),照射光线叫做投影线,投影所在的平面叫做投影面。有时光线是一组互相平行的射线,例如太阳光或探照灯光的一束光中的光线。由平行光线形成的投影是平行投影(parallel projection).由同一点(点光源发出的光线)形成的投影叫做中心投影(center projection)。投影线垂直于投影面产生的投影叫做正投影。投影线不平行于投影面产生的投影叫做斜投影。物体正投影的形状、大小与它相对于投影面的位置和角度有关。

  投影分很多种,最为常见的则为墨卡托投影百度地图Google Maps、微软Bing Maps都是基于墨卡托投影架构的。

五、参考资料

  百度百科:http://baike.baidu.com/

  地理坐标系与投影坐标系的区别:http://www.cnblogs.com/jetz/archive/2005/03/29/127547.html

   地球椭球体(Ellipsoid)、大地基准面(Datum)及地图投影(Projection)三者的基本概念 :http://wenku.baidu.com/view/061c40c7aa00b52acfc7cad1.html

相关说明

本文属学习笔记文章,内容来之广大互联网和相关资料,愿与有志者共同学习交流。欢迎转载,为了保存作者的分享、整理的热情,但请在明显地位标记本文的原文连接。

作      者:Beniao

文章出处:http://beniao.cnblogs.com/  或  http://www.cnblogs.com/

SQL Server 2008空间数据应用系列一:空间信息基础的更多相关文章

  1. SQL Server 2008空间数据应用系列四:基础空间对象与函数应用

    原文:SQL Server 2008空间数据应用系列四:基础空间对象与函数应用 友情提示,您阅读本篇博文的先决条件如下: 1.本文示例基于Microsoft SQL Server 2008 R2调测. ...

  2. SQL Server 2008空间数据应用系列十:使用存储过程生成GeoRSS聚合空间信息

    原文:SQL Server 2008空间数据应用系列十:使用存储过程生成GeoRSS聚合空间信息 友情提示,您阅读本篇博文的先决条件如下: 1.本文示例基于Microsoft SQL Server 2 ...

  3. SQL Server 2008空间数据应用系列十二:Bing Maps中呈现GeoRSS订阅的空间数据

    原文:SQL Server 2008空间数据应用系列十二:Bing Maps中呈现GeoRSS订阅的空间数据 友情提示,您阅读本篇博文的先决条件如下: 1.本文示例基于Microsoft SQL Se ...

  4. SQL Server 2008空间数据应用系列十一:提取MapInfo地图数据中的空间数据解决方案

    原文:SQL Server 2008空间数据应用系列十一:提取MapInfo地图数据中的空间数据解决方案 友情提示,您阅读本篇博文的先决条件如下: 1.本文示例基于Microsoft SQL Serv ...

  5. SQL Server 2008空间数据应用系列八:基于Bing Maps(Silverlight)的空间数据存储

    原文:SQL Server 2008空间数据应用系列八:基于Bing Maps(Silverlight)的空间数据存储 友情提示,您阅读本篇博文的先决条件如下: 1.本文示例基于Microsoft S ...

  6. SQL Server 2008空间数据应用系列六:基于SQLCRL的空间数据可编程性

    原文:SQL Server 2008空间数据应用系列六:基于SQLCRL的空间数据可编程性 友情提示,您阅读本篇博文的先决条件如下: 1.本文示例基于Microsoft SQL Server 2008 ...

  7. SQL Server 2008空间数据应用系列七:基于Bing Maps(Silverlight) 的空间数据展现

    原文:SQL Server 2008空间数据应用系列七:基于Bing Maps(Silverlight) 的空间数据展现 友情提示,您阅读本篇博文的先决条件如下: 1.本文示例基于Microsoft ...

  8. SQL Server 2008空间数据应用系列五:数据表中使用空间数据类型

    原文:SQL Server 2008空间数据应用系列五:数据表中使用空间数据类型 友情提示,您阅读本篇博文的先决条件如下: 1.本文示例基于Microsoft SQL Server 2008 R2调测 ...

  9. SQL Server 2008空间数据应用系列二:空间索引(Spatial Index)基础

    原文:SQL Server 2008空间数据应用系列二:空间索引(Spatial Index)基础 在前一篇博文中我们学习到了一些关于地理信息的基础知识,也学习了空间参照系统,既地球椭球体.基准.本初 ...

  10. SQL Server 2008空间数据应用系列三:SQL Server 2008空间数据类型

    原文:SQL Server 2008空间数据应用系列三:SQL Server 2008空间数据类型 友情提示,您阅读本篇博文的先决条件如下: 1.本文示例基于Microsoft SQL Server ...

随机推荐

  1. JS中内嵌函数中this关键字的使用

    this关键字的使用 在嵌套函数中:和变量不同,this关键字没有作用域的限制,在嵌套函数的内部使用this关键字可以分为以下两种情况: 1)如果嵌套函数作为方法调用,那么this为当前的上下文. 2 ...

  2. jQuery1.8以上,ajaxSend,ajaxStart等一系列事件要绑定在document上才有效果

    jQuery1.8以上,ajaxSend,ajaxStart等一系列事件要绑定在document上才有效果

  3. Oracle procedure存储过程/function函数

    --函数的创建 create function func1(dno number) return NUMBER--必须带有返回值 is v_max number;--定义返回值 begin selec ...

  4. AJAX安全-Session做Token

    个人思路,请大神看到了指点 个人理解token是防止扫号机或者恶意注册.恶意发表灌水,有些JS写的token算法,也会被抓出来被利用,个人感觉还是用会过期的Session做token更好,服务器存储, ...

  5. R语言语法笔记

    ## 1. 数据输入 ## a$b # 数据框中的变量 a = 15 # 赋值 a <- 15 # 赋值 a = c(1,2,3,4,5) # 数组(向量) b = a[1] # 数组下标,从1 ...

  6. Reactor模式(反应器模式)

    Reactor这个词译成汉语还真没有什么合适的,很多地方叫反应器模式,但更多好像就直接叫reactor模式了,其实我觉着叫应答者模式更好理解一些.通过了解,这个模式更像一个侍卫,一直在等待你的召唤,或 ...

  7. 企业生产环境下不同业务的linux分区建议

    常规分区方案: /boot:  100M swap:内存的1至1.5倍 / : 剩余硬盘大小 DB及存储:有大量重要的数据 /boot : 100M swap: 内存的1至1.5倍,如果内存大于等于1 ...

  8. JDK和Jython安装

    下载JAVA SE,下载地址请到oracle官方网站下载. JDK下载地址: http://www.oracle.com/technetwork/java/javase/downloads/jdk8- ...

  9. python27读书笔记0.3

    #-*- coding:utf-8 -*- ##D.has_key(k): A predicate that returns True if D has a key k.##D.items(): Re ...

  10. hive与hbase的区别与联系

    共同点:1.hbase与hive都是架构在hadoop之上的.都是用hadoop作为底层存储 区别:2.Hive是建立在Hadoop之上为了减少MapReduce jobs编写工作的批处理系统,HBa ...