暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

GBase 8c 函数和操作符 - 几何函数和操作符 之 几何类型转换函数

菁菁 2022-10-25
259

  •  box(circle)

描述:将圆转换成矩形

返回类型:box

示例:

gbase=# SELECT box(circle '((0,0),2.0)') AS RESULT;

                                  result                                   

---------------------------------------------------------------------------

 (1.41421356237309,1.41421356237309),(-1.41421356237309,-1.41421356237309)

(1 row)

  •  box(point, point)

描述:将点转换成矩形

返回类型:box

示例:

gbase=# SELECT box(point '(0,0)', point '(1,1)') AS RESULT;

   result    

-------------

 (1,1),(0,0)

(1 row)

  •  box(polygon)

描述:将多边形转换成矩形

返回类型:box

示例:

gbase=# SELECT box(polygon '((0,0),(1,1),(2,0))') AS RESULT;

   result    

-------------

 (2,1),(0,0)

(1 row)

  •  circle(box)

描述:矩形转换成圆

返回类型:circle

示例:

gbase=# SELECT circle(box '((0,0),(1,1))') AS RESULT;

            result             

-------------------------------

 <(0.5,0.5),0.707106781186548>

(1 row)

  •  circle(point, double precision)

描述:将圆心和半径转换成圆

返回类型:circle

示例:

gbase=# SELECT circle(point '(0,0)', 2.0) AS RESULT;

  result   

-----------

 <(0,0),2>

(1 row)

  •  circle(polygon)

描述:将多边形转换成圆

返回类型:circle

示例:

 gbase=# SELECT circle(polygon '((0,0),(1,1),(2,0))') AS RESULT;

                  result                   

-------------------------------------------

 <(1,0.333333333333333),0.924950591148529>

(1 row)

  •  lseg(box)

描述:矩形对角线转化成线段

返回类型:lseg

示例:

 gbase=# SELECT lseg(box '((-1,0),(1,0))') AS RESULT;

     result     

----------------

 [(1,0),(-1,0)]

(1 row)

  •  lseg(point, point)

描述:点转换成线段

返回类型:lseg

示例:

 gbase=# SELECT lseg(point '(-1,0)', point '(1,0)') AS RESULT;

     result     

----------------

 [(-1,0),(1,0)]

(1 row)

  •  slope(point, point)

描述:计算两个点构成直线的斜率

返回类型: double

示例:

 gbase=# SELECT slope(point '(1,1)', point '(0,0)') AS RESULT;

 result

--------

      1

(1 row)

  •  path(polygon)

描述:多边形转换成路径

返回类型:path

示例:

 gbase=# SELECT path(polygon '((0,0),(1,1),(2,0))') AS RESULT;

       result        

---------------------

 ((0,0),(1,1),(2,0))

(1 row)

  •  point(double precision, double precision)

描述:节点

返回类型:point

示例:

 gbase=# SELECT point(23.4, -44.5) AS RESULT;

    result    

--------------

 (23.4,-44.5)

(1 row)

  •  point(box)

描述:矩形的中心

返回类型:point

示例:

gbase=# SELECT point(box '((-1,0),(1,0))') AS RESULT;

 result

--------

 (0,0)

(1 row)

  •  point(circle)

描述:圆心

返回类型:point

示例:

gbase=# SELECT point(circle '((0,0),2.0)') AS RESULT;

 result

--------

 (0,0)

(1 row)

  •  point(lseg)

描述:线段的中心

返回类型:point

示例:

 gbase=# SELECT point(lseg '((-1,0),(1,0))') AS RESULT;

 result

--------

 (0,0)

(1 row)

  •  point(polygon)

描述:多边形的中心

返回类型:point

示例:

gbase=# SELECT point(polygon '((0,0),(1,1),(2,0))') AS RESULT;

        result         

-----------------------

 (1,0.333333333333333)

(1 row)

  •  polygon(box)

描述:矩形转换成4点多边形

返回类型:polygon

示例:

gbase=# SELECT polygon(box '((0,0),(1,1))') AS RESULT;

          result           

---------------------------

 ((0,0),(0,1),(1,1),(1,0))

(1 row)

  •  polygon(circle)

描述:圆转换成12点多边形

返回类型:polygon

示例:

gbase=# SELECT polygon(circle '((0,0),2.0)') AS RESULT;

                                                                                                                                                result                                                                                      

    

-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

 ((-2,0),(-1.73205080756888,1),(-1,1.73205080756888),(-1.22464679914735e-16,2),(1,1.73205080756888),(1.73205080756888,1),(2,2.44929359829471e-16),(1.73205080756888,-0.999999999999999),(1,-1.73205080756888),(3.67394039744206e-16,-2),(-0.999999999999999,-1.73205080756888),(-1.73205080756888,-1))

(1 row)

  •  polygon(npts, circle)

描述:圆转换成npts点多边形

返回类型:polygon

示例:

gbase=# SELECT polygon(12, circle '((0,0),2.0)') AS RESULT;

                                                                                                                                                result                                                                                      

    

-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

 ((-2,0),(-1.73205080756888,1),(-1,1.73205080756888),(-1.22464679914735e-16,2),(1,1.73205080756888),(1.73205080756888,1),(2,2.44929359829471e-16),(1.73205080756888,-0.999999999999999),(1,-1.73205080756888),(3.67394039744206e-16,-2),(-0.999999999999999,-1.73205080756888),(-1.73205080756888,-1))

(1 row)

  •  polygon(path)

描述:路径转换成多边形

返回类型:polygon

示例:

 gbase=# SELECT polygon(path '((0,0),(1,1),(2,0))') AS RESULT;

       result        

---------------------

 ((0,0),(1,1),(2,0))

(1 row)

「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论