没有合适的资源?快使用搜索试试~ 我知道了~
首页ST_Geometry及使用大全.pdf
ST_Geometry及使用大全.pdf
需积分: 49 630 浏览量
更新于2023-05-24
评论 1
收藏 1.43MB PDF 举报
ST_Geometry及使用大全,ST_Geometry及使用大全,ST_Geometry及使用大全
资源详情
资源评论
资源推荐

ArcGIS GeoDatabase
ST_Geometry 简介及配置
Bbs.esrichina-bj.cn
北斗星
(注:其中大部分内容来自 ESRI 内部技术文档、网络资源整理所得,如果设及到你的内容在
此表示感谢)

目录
第一章 ST_Geometry 与配置 .......................................................................................................... 4
1.1 简介 ........................................................................................................................... 4
1.2 基于 Oracle 的 ST_Geometry 的配置 ..................................................................... 5
1.2.1 Oracle 监听配置 .............................................................................................. 5
1.2.1.1 Windows 环境的配置............................................................................... 5
1.2.1.2 Linux 环境的配置 .................................................................................... 6
1.2.1.3 Unix 环境的配置 ...................................................................................... 7
1.2.2 OracleTNS 配置 ................................................................................................ 9
1.3 Oracle 的 ST_Geometry 权限及数据库 .................................................................. 9
1.3.1 检查 ST 定义 ..................................................................................................... 9
1.3.2 检查 st_shapelib 对象定义 ......................................................................... 10
第二章 ST_Geometry 存储结构 .................................................................................................... 11
2.1 存储结构 ................................................................................................................. 11
2.2 操作函数 ................................................................................................................. 12
2.3 构造 ST_Geometry 对象 ........................................................................................ 12
2.4 用户权限限制 ......................................................................................................... 13
第三章 创建 ST_Geometry 要素类 ............................................................................................... 14
3.1 使用 SDE 创建要素类 ........................................................................................... 14
3.2 直接使用 SQL 语句创建要素类。 ....................................................................... 14
3.2.1 连接权限设置 ................................................................................................. 14
首先使用 ......................................................................................................................... 14
3.2.2 SQL 语句创建 ST_Geometry ........................................................................... 14
3.2.3 使用 sdelayer 命令 ....................................................................................... 15
3.2.4 SQL 直接操纵 FeatureClass ......................................................................... 17
3.2.4.1 数据的插入,删除,更新 ............................................................. 17
3.2.4.2 查询 ................................................................................................. 18
3.2.4.3 创建索引 ......................................................................................... 19
3.2.4.4 创建空间参考系 ............................................................................. 19
3.2.4.5 Wkt 和 Wkb ............................................................................................ 20
第四章 SQL 函数介绍 .................................................................................................................... 28
4.1 执行空间判断 ......................................................................................................... 28
4.1.1 ST_Contains ................................................................................................... 28
4.1.2 ST_Crosses ..................................................................................................... 29
4.1.3 ST_Disjoint ................................................................................................... 30
4.1.4 ST_Equals ....................................................................................................... 31
4.1.5 ST_Intersects ............................................................................................... 31
4.1.6 ST_Overlaps ................................................................................................... 32
4.1.7 ST_Touches ..................................................................................................... 33
4.1.8 ST_Within ....................................................................................................... 34
4.2 空间分析函数: ..................................................................................................... 35
4.2.1 ST_Buffer 缓冲区分析 .................................................................................. 35
4.2.2 ConvexHull ..................................................................................................... 35
4.2.3 ST_Difference ............................................................................................... 36

4.2.4 ST_Intersection ........................................................................................... 37
4.2.5 ST_SymmetricDiff ......................................................................................... 38
4.2.6 ST_Union ......................................................................................................... 39
4.2.7 ST_Distance ................................................................................................... 40
4.3 聚集函数 ................................................................................................................. 40
4.3.1 ST_Aggr_ConvexHull ..................................................................................... 40
4.3.2 ST_Aggr_Intersection ................................................................................. 40
4.3.3 ST_Aggr_Union ............................................................................................... 40
4.3.4 空间数据属性提取的函数 ............................................................................. 41
4.3.4.1 求几何维度的函数: ..................................................................... 41
4.3.4.2 z 值函数 .................................................................................................. 41
4.3.4.3 量测值函数 ..................................................................................... 41
4.3.4.4 取几何类型函数 ............................................................................. 41
4.3.4.5 ST_Point 相关函数 ................................................................................. 41
4.3.4.6 面积和长度函数 ............................................................................. 41
4.3.4.7 ST_LineString 相关函数 ........................................................................ 41
4.3.4.8 ST_MultiLineString 相关函数 .............................................................. 42
4.3.4.9 ST_Polygon 相关函数 ............................................................................ 42
4.3.4.10 ST_MultiPolygon 相关函数 ........................................................... 43
4.3.4.11 求几何坐标点个数函数 ................................................................. 43
4.3.4.12 空间参考系相关函数 ..................................................................... 43
4.3.4.13 其他函数 ......................................................................................... 43

第一章 ST_Geometry 与配置
1.1 简介
ArcSDE for Oracle 提供了 ST_Geometry 类型来存储几何数据。ST_Geometry 是一种
遵循 ISO 和 OGC 规范的,可以通过 SQL 直接读取的空间信息存储类型。采用这种存储方
式能够更好的利用 oracle 的资源,更好的兼容 oracle 的特征,比如复制和分区,并且能够
更快的读取空间数据。使用 ST_Geometry 存储空间数据,可以把业务数据和空间数据存储
到一张表中(使用 SDENBLOB 方式业务数据和空间数据是分开存储在 B 表和 F 表中的),
因此可以很方便的在业务数据中增加空间数据(只需要在业务表中增加 ST_Geometry 列)。
使用这种存储方式还能够简化多用户的读取,管理(只需要管理一张表)。
从 ArcGIS 9.3 开始,新的 ArcSDE geodatabases for Oracle 会默认使用
ST_Geometry 方式来存储空间数据。它实现了 SQL3 规范中的用户自定义类型
(user-defined data types),允许用户使用 ST_Geometry 类型创建列来存储诸如界址点,
街道,地块等空间数据。
使用 ST_Geometry 类型存储空间数据,具有以下优势:
1)通过 SQL 函数( ISO SQL/MM 标准)直接访问空间数据;
2)使用 SQL 语句存储、检索操纵空间数据,就像其他类型数据一样。
3)通过存储过程来进行复杂的空间数据检索和分析。
4)其他应用程序可以通过 SQL 语句来访问存储在 geodatabase中的数据。从 ArcGIS 9.3
开始,新的 ArcSDE geodatabases for Oracle 要求所以 ST 函数调用的时候前面都要加上
SDE schema 名称。例如:要对查询出来的空间数据进行 union 操作,则 SQL 函数需要这
样写:"sde.ST_Union",在 9,2 版本之前,可以不加 SDE schema 名称。

1.2 基于 Oracle 的 ST_Geometry 的配置
1.2.1 Oracle 监听配置
从 9.3 开始,默认创建的要素类都使用 ST_Geometry 存储空间数据,9.3 版本之前,
可以通过配置 dbtune 参数来完成。访问存储在 oracle 中的 ST_Geometry 类型数据的 SQL
函数,通过扩展 oracle 的 external procedure agent 或者 extproc 来实现,因此,直接使用
这些 SQL 函数需要配置 oracle 的 listener,让 oracle 能够找到这些扩展库。如果使用 SDE
读取这些数据,则不需要配置。
下面介绍一下如何配置 oracle listener。(关于 oracle 的 listener 的详细配置方法请参考
oracle 的相关文档)
1.2.1.1 Windows环境的配置
1)找到 oracle 数据库的安装目录,然后定位到 ORACLE_HOME\network\admin 目录,例如:
D:\oracle\product\11.1.0\db_1\network\admin
2)备份 listener.ora 文件(这点很重要,在对 oracle 的配置做任何更改的时候都要进行备份)
3)打开 listener.ora 文件,找到 (PROGRAM = extproc) 这一行,在这行下面添加对 ST_SHAPELIB 的引用,即指定 ST_SHAPELIB
的地址,如下:
Windows 下: (ENVS="EXTPROC_DLLS=
D:\ArcGIS\ArcSDE_Oracle\ArcSDE\ora11gexe\bin\st_shapelib.dll ") 其中
“D:\ArcGIS\ArcSDE_Oracle\ArcSDE\ora11gexe\bin\st_shapelib.dll”为 ST_SHAPELIB 的物理路径,可以根据安装情况自己修改。
4)保存 listener.ora 文件,重新启动监听程序。
如果 ArcSDE 和 Oracle 不是安装在一起,需要把外部库文件拷贝到 Oracle 目录下,重新设置路径,如需要拷贝
st_shapelib.dll pe.dll sg.dll 三个文件到 ORACLE_HOME/lib 下如 D:\oracle\product\11.1.0\db_1\LIB,同时需要修改成
如下:(ENVS="EXTPROC_DLLS=C:\ArcSDE\sdeexe93\bin\st_shapelib.dll")
5)下面是 listener.ora 例子:
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = PLSExtProc)
(ORACLE_HOME = D:\oracle\product\11.1.0\db_1)
(PROGRAM = extproc)
(ENVS="EXTPROC_DLLS=D:\ArcGIS\ArcSDE_Oracle\ArcSDE\ora11gexe\LIB\st_shapelib.dll")
)
(SID_DESC =
(SID_NAME = OracleSIDName)
(ORACLE_HOME = D:\oracle\product\11.1.0\db_1)
(GLOBAL_NAME = OracleSIDName)
)
剩余43页未读,继续阅读















安全验证
文档复制为VIP权益,开通VIP直接复制

评论0