/*
* @Desc : 点与多边形要素关系计算。
* @Notice : 只能构建二维SDO_GEOMETRY对象。
* @Param : 要素1,关系类型,要素2,计算精度。
* @Return : true/false
*/
SELECT
SDO_GEOM.RELATE(
-- 点要素
MDSYS.SDO_GEOMETRY(2001,4326,NULL,
MDSYS.SDO_ELEM_INFO_ARRAY(1, 1, 1),
MDSYS.SDO_ORDINATE_ARRAY(113.2,22.3)
)
,'ANYINTERACT',-- 关系类型
-- 面要素
MDSYS.SDO_GEOMETRY(2003,4326,NULL,
MDSYS.SDO_ELEM_INFO_ARRAY(1, 3, 1),
MDSYS.SDO_ORDINATE_ARRAY(113.1,22.5, 113.4,22.5, 113.4,22.1, 113.1,22.1, 113.1,22.5)
)
, 0.005-- 计算精度
) RELATIONSHIP
FROM DUAL;
/*
* 关系类型,MASK参数:
*
* ANYINTERACT : SDO_GEOMETRY2落在SDO_GEOMETRY1面上包括在边上。
* CONTAINS : SDO_GEOMETRY2完全包含在SDO_GEOMETRY1几何对象中,并且两个几何对象的边没有交叉。
* COVEREDBY : SDO_GEOMETRY1完全包含在SDO_GEOMETRY2中,并且这两个几何对象的边有一个或多个点相互重叠。
* COVERS : SDO_GEOMETRY2完全包含在SDO_GEOMETRY1中,并且这两个几何对象的边有一个或多个点相互重叠。
* DISJOINT : 两个几何没有重叠交叉点,也没有共同的边。
* EQUAL : 两个几何是相等的。
* INSIDE : SDO_GEOMETRY1完全包含在SDO_GEOMETRY2几何对象中,并且两个几何对象的边没有交叉。
* ON : SDO_GEOMETRY1的边和内部的线完全在SDO_GEOMETRY2上。
* OVERLAPBDYDISJOINT : 两个几何对象交迭,但是边没有交叉。
* OVERLAPBDYINTERSECT : 两个几何对象交迭,并且边有部分交叉。
* TOUCH : 两个几何对象有共同的边,但没有交叉。
*/
Oracle空间函数-要素关系计算函数
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
推荐阅读更多精彩内容
- 基于oracle 12c 1.表空间 1.1 创建表空间 1.2 删除表空间 2.用户管理 2.1创建用户 2.2...
- Oracle数据库、实例、用户、表空间、表之间的关系 通常我们oralce数据库,说的是实例,而不是真正的数据库,...