• GBase 8c V3.0.0数据类型——几何类型转换函数


    1. box(circle)

    描述:将圆转换成矩形

    返回类型:box

    示例:

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

                                      result                                   

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

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

    (1 row)

    1. box(point, point)

    描述:将点转换成矩形

    返回类型:box

    示例:

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

       result    

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

     (1,1),(0,0)

    (1 row)

    1. box(polygon)

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

    返回类型:box

    示例:

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

       result    

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

     (2,1),(0,0)

    (1 row)

    1. circle(box)

    描述:矩形转换成圆

    返回类型:circle

    示例:

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

                result             

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

     <(0.5,0.5),0.707106781186548>

    (1 row)

    1. circle(point, double precision)

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

    返回类型:circle

    示例:

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

      result   

    -----------

     <(0,0),2>

    (1 row)

    1. circle(polygon)

    描述:将多边形转换成圆

    返回类型:circle

    示例:

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

                      result                   

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

     <(1,0.333333333333333),0.924950591148529>

    (1 row)

    1. lseg(box)

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

    返回类型:lseg

    示例:

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

         result     

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

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

    (1 row)

    1. lseg(point, point)

    描述:点转换成线段

    返回类型:lseg

    示例:

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

         result     

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

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

    (1 row)

    1. slope(point, point)

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

    返回类型: double

    示例:

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

     result

    --------

          1

    (1 row)

    1. path(polygon)

    描述:多边形转换成路径

    返回类型:path

    示例:

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

           result        

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

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

    (1 row)

    1. point(double precision, double precision)

    描述:节点

    返回类型:point

    示例:

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

        result    

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

     (23.4,-44.5)

    (1 row)

    1. point(box)

    描述:矩形的中心

    返回类型:point

    示例:

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

     result

    --------

     (0,0)

    (1 row)

    1. point(circle)

    描述:圆心

    返回类型:point

    示例:

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

     result

    --------

     (0,0)

    (1 row)

    1. point(lseg)

    描述:线段的中心

    返回类型:point

    示例:

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

     result

    --------

     (0,0)

    (1 row)

    1. point(polygon)

    描述:多边形的中心

    返回类型:point

    示例:

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

            result         

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

     (1,0.333333333333333)

    (1 row)

    1. 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)

    1. 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)

    1. 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)

    1. polygon(path)

    描述:路径转换成多边形

    返回类型:polygon

    示例:

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

           result        

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

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

    (1 row)

  • 相关阅读:
    Go函数全景:从基础到高阶的深度探索
    STL-list的使用及其模拟实现
    灵活多样认证授权,零开发投入保障 IoT 安全
    [附源码]Python计算机毕业设计Django房屋租赁信息系统
    javaee之黑马乐优商城3
    《动手学深度学习 Pytorch版》 10.1 注意力提示
    深度学习:基于长短时记忆网络LSTM实现情感分析
    Ubuntu-Docker-STF(devicefarmer)环境搭建 (android 12)
    【项目】Http服务器
    倒计数数字旋转特效
  • 原文地址:https://blog.csdn.net/futianxia061112/article/details/125421012