
# 几何类型转换函数
#### box(circle)
描述：将圆转换成矩形。
返回类型：box
示例：
```
SELECT box(circle '((0,0),2.0)') AS RESULT;
                                  result                                   
---------------------------------------------------------------------------
 (1.41421356237309,1.41421356237309),(-1.41421356237309,-1.41421356237309)
(1 row)
```
#### box(point, point)
描述：将点转换成矩形。
返回类型：box
示例：
```
SELECT box(point '(0,0)', point '(1,1)') AS RESULT;
   result    
-------------
 (1,1),(0,0)
(1 row)
```
#### box(polygon)
描述：将多边形转换成矩形。
返回类型：box
示例：
```
SELECT box(polygon '((0,0),(1,1),(2,0))') AS RESULT;
   result    
-------------
 (2,1),(0,0)
(1 row)
```
#### circle(box)
描述：矩形转换成圆。
返回类型：circle
示例：
```
SELECT circle(box '((0,0),(1,1))') AS RESULT;
            result             
-------------------------------
 <(0.5,0.5),0.707106781186548>
(1 row)
```
#### circle(point, double precision)
描述：将圆心和半径转换成圆。
返回类型：circle
示例：
```
SELECT circle(point '(0,0)', 2.0) AS RESULT;
  result   
-----------
 <(0,0),2>
(1 row)
```
#### circle(polygon)
描述：将多边形转换成圆。
返回类型：circle
示例：
```
SELECT circle(polygon '((0,0),(1,1),(2,0))') AS RESULT;
                  result                   
-------------------------------------------
 <(1,0.333333333333333),0.924950591148529>
(1 row)
```
#### lseg(box)
描述：矩形对角线转化成线段。
返回类型：lseg
示例：
```
SELECT lseg(box '((-1,0),(1,0))') AS RESULT;
     result     
----------------
 [(1,0),(-1,0)]
(1 row)
```
#### lseg(point, point)
描述：点转换成线段。
返回类型：lseg
示例：
```
SELECT lseg(point '(-1,0)', point '(1,0)') AS RESULT;
     result     
----------------
 [(-1,0),(1,0)]
(1 row)
```
#### path(polygon)
描述：多边形转换成路径。
返回类型：path
示例：
```
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
示例：
```
SELECT point(23.4, -44.5) AS RESULT;
    result    
--------------
 (23.4,-44.5)
(1 row)
```
#### point(box)
描述：矩形的中心。
返回类型：point
示例：
```
SELECT point(box '((-1,0),(1,0))') AS RESULT;
 result 
--------
 (0,0)
(1 row)
```
#### point(circle)
描述：圆心。
返回类型：point
示例：
```
SELECT point(circle '((0,0),2.0)') AS RESULT;
 result 
--------
 (0,0)
(1 row)
```
#### point(lseg)
描述：线段的中心。
返回类型：point
示例：
```
SELECT point(lseg '((-1,0),(1,0))') AS RESULT;
 result 
--------
 (0,0)
(1 row)
```
#### point(polygon)
描述：多边形的中心。
返回类型：point
示例：
```
SELECT point(polygon '((0,0),(1,1),(2,0))') AS RESULT;
        result         
-----------------------
 (1,0.333333333333333)
(1 row)
```
#### polygon(box)
描述：矩形转换成4点多边形。
返回类型：polygon
示例：
```
SELECT polygon(box '((0,0),(1,1))') AS RESULT;
          result           
---------------------------
 ((0,0),(0,1),(1,1),(1,0))
(1 row)
```
#### polygon(circle)
描述：圆转换成12点多边形。
返回类型：polygon
示例：
```
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
示例：
```
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
示例：
```
SELECT polygon(path '((0,0),(1,1),(2,0))') AS RESULT;
       result        
---------------------
 ((0,0),(1,1),(2,0))
(1 row)
```
