MYSQL空间几何对象

 前言

  遵从OpenGIS联盟(OGC)的规范,MySQL实施了空间扩展。OGC是一个由250多家公司、代理机构和大学参与的国际联盟,负责开发公开的概念解决方案,这类解决方案对所有用来管理空间数据的应用都是有用的。OGC的网站是http://www.opengis.org/

  MySQL实施了OGC建议的具有Geometry类型的SQL环境的一个子集。该术语指的是用一组集合类型扩展的环境。具有几何值的SQL列是作为拥有集合类型的列实施的。该规范描述了SQL几何类型集合,以及作用在这些类型上用于创建和分析几何值的函数。

  OpenGis几何模型https://blog.csdn.net/q383965374/article/details/17142621

 Geometry类

  Geometry类是层次结构的根类,Geometry是一个抽象类,Geometry的可实例化子类限制为可在2维坐标空间中存在的0、1、2维几何对象。所有的可实例化几何类是这样定义的,从而使得几何类的实例从拓扑意义上讲是闭合的(也就是说,所有定义的几何类包含其边界)。

  基本Geometry类具有关于Point、Curve、Surface和GeometryCollection的子类

  0维:Point

  1维:Curve ,具有子类LineString,以及次级子类Line和LinearRing

  2维:Surface , 具有子类Polygon

  

  GeometryCollection是特殊的0维、1维和2维类集合,名为MultiPoint、MultiLineString和MultiPolygon,分别用于为对应的Points、LineStrings和Polygons集合进行几何建模。

  • MultiCurve和MultiSurface是作为抽象超类引入的,它们归纳了用于处理Curves和Surfaces的集合接口。

 

  • Geometry、Curve、Surface、MultiCurve和MultiSurface定义为非实例化类。它们为其子类定义了公用方法集合,而且是为扩展而包含在内的。

 

  • Point、LineString、Polygon、GeometryCollection、MultiPoint、MultiLineString和MultiPolygon定义为可实例化类。

 


 

  • Point

字段类型: point
样例: Point(1 1)

  • MultiPoint

字段类型: multipoint
样例: MULTIPOINT (1 1,2 2,3 3)

  • LineString

字段类型: linestring
样例: LINESTRING(1 1,2 2,3 3)

  • MultiLineString

字段类型: multilinestring
样例: MULTILINESTRING ((1 1,2 2,3 3),(2 2,2 3,2 4))

 

  • Polygon

字段类型: polygon
样例:
单面 POLYGON((1 1,1 2,2 2,2 1,1 1))

  • MultiPolygon

字段类型: multipolygon
样例: MULTIPOLYGON(((1 1,1 2,2 2,2 1,1 1)),((2 2,2 3,3 2,2 2)))
里面是多个polygon

posted @ 2019-09-19 11:57  爪哇搬砖  阅读(599)  评论(0编辑  收藏  举报