空间数据库 第六章 空间数据库应用 Oracle Spatial (2)
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第六章 空间数据库应用
6.3.1 SDO_GEOMETRY类型详解 SDO_GEOMETRY类型详解
《 空 间 数 据 库 原 理 》 SDO_ORDINATES
SDO_ORDINATES是一个可变长度的数组,用 SDO_ORDINATES是一个可变长度的数组,用 于存储几何对象的真实坐标,该数组的类型为 NUMBER型,它的最大长度为1048576。 NUMBER型,它的最大长度为1048576。 SDO_ORDINATES必须与SDO_ELEM_INFO数 SDO_ORDINATES必须与SDO_ELEM_INFO数 组配合使用,才具有实际意义; SDO_ORDINATES的坐标存储方式由几何对象 SDO_ORDINATES的坐标存储方式由几何对象 的维数决定,
d代表geometry的维数:2,3,4 代表geometry的维数:2,3,4 l代表线性参照系LRS测量维度,非LRS为0 代表线性参照系LRS LRS测量维度,非LRS LRS为 tt指明了geometry的类型,00-07,08-99保留 tt指明了geometry的类型,00-07,08-99保留
SDO_STARTING_OFFSET: SDO_STARTING_OFFSET:元素坐标值从 SDO_ORDINATES数组第几个数开始,>=1 SDO_ORDINATES数组第几个数开始,>=1 SDO_ETYPE:说明元素的类型,1/2/1003/2003表 SDO_ETYPE:说明元素的类型,1/2/1003/2003表 明是一个简单元素;4/1005/2005表明是一个复合元 明是一个简单元素;4/1005/2005表明是一个复合元 素 SDO_INTERPRETATION: ETYPE=1003/2003, SDO_INTERPRETATION:当ETYPE=1003/2003, 指明解释SDO_ORDINATES的方式;当 指明解释SDO_ORDINATES的方式;当 ETYPE=1005/2005,指明后面的几个单元构成复合 ETYPE=1005/2005,指明后面的几个单元构成复合 元素
Element 1= [P1(6,15), P2(10,10), P3(20,10), P4(25,15), P5(25,35), P6(19,40),P7(11,40), P8(6,25), P1(6,15)] P1(6,15)] Element 2= [H1(12,15), H2(15,24)]
2010-102010-10-14
6
School of Resource & Environment Engineering WHUT
第六章 空间数据库应用
6.3.1 SDO_GEOMETRY类型详解 SDO_GEOMETRY类型详解
《 空 间 数 据 库 原 理 》 SDO_ELEM_INFOΒιβλιοθήκη Baidu
变长的数值数组,说明 变长的数值数组,说明SDO_ORDINATES成 说明SDO_ORDINATES成 员中数值的意义 每三个数值为一个单元,分别是:
9
2010-102010-10-14
School of Resource & Environment Engineering WHUT
第六章 空间数据库应用
《 空 间 数 据 库 原 理 》
有效性约束
GTYPE=d001/d005(点 ,则ETYPE=1 GTYPE=d001/d005(点),则ETYPE=1 GTYPE=d002/d006(线 ,则ETYPE=2/4 GTYPE=d002/d006(线),则ETYPE=2/4 GTYPE=d003/d007(面 GTYPE=d003/d007(面),则 ETYPE=3/5/1003/2003/1005/2005
《 空 间 数 据 库 原 理 》 SDO_POINT
为了性能优化而设置的 如果SDO_ELEM_INFO和SDO_ORDINATES成员 如果SDO_ELEM_INFO和SDO_ORDINATES成员 都为空的话,SDO_POINT就是一个POINT对象 都为空的话,SDO_POINT就是一个POINT对象 的坐标值,否则SDO_POINT被忽略 的坐标值,否则SDO_POINT被忽略 如果图层中仅有POINT 如果图层中仅有POINT对象的话,强烈建议将 POINT对象的话,强烈建议将 坐标值存放在SDO_POINT中 坐标值存放在SDO_POINT中
如果几何对象为三维,则SDO_ORDINATES的坐标 如果几何对象为三维,则SDO_ORDINATES的坐标 以{X1,Y1,Z1,X2,Y2,Z2,…..}的顺序排列, {X1,Y1,Z1,X2,Y2,Z2,…..}的顺序排列, 如果几何对象为二维,则SDO_ORDINATES的坐标 如果几何对象为二维,则SDO_ORDINATES的坐标 以{X1,Y1,X2,Y2,…..}顺序排列。 {X1,Y1,X2,Y2,…..}顺序排列。
6.3.1 SDO_GEOMETRY类型详解 SDO_GEOMETRY类型详解
空 值 间 dl00 数dl01 据 dl02 库 dl03 原 dl04 理 dl05 》 《 SDO_GTYPE
geometry类型 geometry类型
UNKNOWN_GEOMETRY POINT
说明
Spatial忽略本类型 Spatial忽略本类型 点 折线或者带圆弧折线 多边形 异质geometry集合 异质geometry集合 点集 线集 多边形集
2010-102010-10-14
12
School of Resource & Environment Engineering WHUT
第六章 空间数据库应用
6.3.2.1 插入空间数据
《 空 间 数 据 库 原 理 》 Polygon with Hole
The geometry to be stored can be a polygon with a hole, as shown in Figure
11
School of Resource & Environment Engineering WHUT
第六章 空间数据库应用
6.3.2.1 插入空间数据
《 空 间 数 据 库 原 理 》 Oracle Spatial uses standard Oracle9i tables Oracle9i that can be accessed or loaded with standard SQL syntax.
2010-102010-10-14
10
School of Resource & Environment Engineering WHUT
第六章 空间数据库应用
6.3.2 插入、索引和查询空间数据 插入、
《 空 间 数 据 库 原 理 》 插入空间数据 创建空间索引 查询空间数据
空间查询 空间连接
2010-102010-10-14
2010-102010-10-14
13
School of Resource & Environment Engineering WHUT
第六章 空间数据库应用
6.3.2.1 插入空间数据
The coordinate values for Element 1 and Element 2 (the hole) are:
第六章 空间数据库应用
6.3.1 SDO_GEOMETRY类型详解 SDO_GEOMETRY类型详解
《 空 间 数 据 库 原 理 》 SDO_SRID
SDO_SRID用来确定geometry所对应的空间参 SDO_SRID用来确定geometry所对应的空间参 照系
null代表不对应任何参照系 null代表不对应任何参照系 非空值必需参照MDSYS.CS_SRS表的 表的SRID字段 字段, 非空值必需参照MDSYS.CS_SRS表的SRID字段, 同时需要存入USER_SDO_GEOM_METADATA表的 同时需要存入USER_SDO_GEOM_METADATA表的 SRID字段 SRID字段
在同一个字段里的所有geometry对象都必须具 在同一个字段里的所有geometry对象都必须具 有相同的SRID 有相同的SRID
2010-102010-10-14
5
School of Resource & Environment Engineering WHUT
第六章 空间数据库应用
6.3.1 SDO_GEOMETRY类型详解 SDO_GEOMETRY类型详解
2010-102010-10-14
2
School of Resource & Environment Engineering WHUT
第六章 空间数据库应用
6.3.1 SDO_GEOMETRY详解 SDO_GEOMETRY详解
《 空 间 数 据 库 原 理 》 SDO_GTYPE
指明了geometry的类型,对应OGIS几何对象模 指明了geometry的类型,对应OGIS几何对象模 型中的类型 是一个4位数字,格式为dltt,其中: 是一个4位数字,格式为dltt,其中:
《 空 间 数 据 库 》 武汉理工大学资源与环境工程学院
第四章 Oracle Spatial
School of Resource & Environment Engineering WHUT
第六章 空间数据库应用
6.3 SDO_GEOMETRY类型 SDO_GEOMETRY类型
《 Oracle Spatial defines the object type SDO_GEOMETRY as: 空 create type SDO_GEOMETRY as object ( number, 间 SDO_GTYPE number, number, 数 SDO_SRID number, SDO_POINT_TYPE, 据 SDO_POINT SDO_POINT_TYPE, MDSYS.SDO_ELEM_INFO_ARRAY, 库 SDO_ELEM_INFO MDSYS.SDO_ELEM_INFO_ARRAY, 原 SDO_ORDINATES MDSYS.SDO_ORDINATE_ARRAY ); 理 create type SDO_POINT_TYPE as object ( 》 X number, y number, z number); number, number, number);
create type SDO_ELEM_INFO_ARRAY varray(1048576) number; as varray(1048576) of number; create type SDO_ORDINATE_ARRAY varray(1048576) number; as varray(1048576) of number;
LINE or CURVE POLYGON COLLECTION MULTIPOINT dl06 MULTILINE or MULTICURVE dl07 MULTIPOLYGON
2010-102010-10-14
4
School of Resource & Environment Engineering WHUT
geometry的几个方法可以返回类型值 geometry的几个方法可以返回类型值
GET_DIMS, GET_LRS_DIM, GET_GTYPE
2010-102010-10-14
3
School of Resource & Environment Engineering WHUT
第六章 空间数据库应用
7
2010-102010-10-14
School of Resource & Environment Engineering WHUT
第六章 空间数据库应用
《 空 间 数 据 库 原 理 》
2010-102010-10-14
8
School of Resource & Environment Engineering WHUT
《 空 间 数 据 库 原 理 》
2010-102010-10-14
14
School of Resource & Environment Engineering WHUT