--圆几何构造函数 ST_CreateCircle(geom ,n)
geom:为闭合的Polygon,里面必须有个重复的点
n:指定生成圆(椭圆)的坐标个数,不能小于4
drop table if exists dmt;
create table dmt(gemo ST_Geometry);
insert into dmt (gemo) select dmgeo2.ST_CreateCircle(dmgeo2.ST_GeomFromText('polygon ((0 0, 0 10, 10 10, 10 0, 0 0))'),6) from dual;
insert into dmt (gemo) select dmgeo2.ST_CreateCircle(dmgeo2.ST_GeomFromText('polygon ((10 0, 0 10, 10 10, 10 0))'),4) from dual;
insert into dmt (gemo) select dmgeo2.ST_CreateCircle(dmgeo2.ST_GeomFromText('polygon ((0 0, 0 10, 10 10,11 11,10 10, 0 0))'),4) from dual;
--弧线几何构造函数 ST_CreateArc(geom ,n ,startang ,angextext)
startang 表示截取圆弧、椭圆弧线的起始角度
angextent:表示弧线的跨度(由此可得到结束角度),它的取值范围为 0~2*Π,不在此范围内的取值一律视为 2*Π。
返回值:LineString 几何对象。
insert into dmt (gemo) select dmgeo2.ST_CreateArc(dmgeo2.ST_GeomFromText('polygon ((0 0, 0 10, 10 10, 10 0, 0 0))'),6,45,90)
-- 扇形几何构造函数 ST_CreateArcPolygon(geom ,n ,startang,angextext )
返回值:Polygon 几何对象。
insert into dmt (gemo) select dmgeo2.ST_CreateArcPolygon(dmgeo2.ST_GeomFromText('polygon ((0 0, 0 10, 10 10, 10 0, 0 0))'),6,45,90)
圆环几何构造函数ST_CreateAnnulus (geom1,geom2,n)
geom1:构建外圆的几何对象。
geom2:构建内圆的几何对象。
n:指定生成圆环的坐标个数
insert into dmt (gemo) select dmgeo2.ST_CreateAnnulus(dmgeo2.ST_GeomFromText('polygon ((0 0, 0 10, 10 10, 10 0, 0 0))'),dmgeo2.ST_GeomFromText('polygon ((10 0, 0 10, 10 10, 10 0))'),6) from dual;
扇环几何构造函数ST_CreateAnnularSector(geom1,geom2,n,startang,angextent)
insert into dmt (gemo) select dmgeo2.ST_CreateAnnularSector(dmgeo2.ST_GeomFromText('polygon ((0 0, 0 10, 10 10, 10 0, 0 0))'),dmgeo2.ST_GeomFromText('polygon ((10 0, 0 10, 10 10, 10 0))'),6,20,80) from dual;