이 문서는 지원되지 않는 버전의 PostgreSQL에 대한 것입니다.
당신은에 대해 동일한 페이지를 볼 수 있습니다무지개 토토 PostgreSQL : 문서 : 17 : 9.11. 기하학적 기능 및 연산자버전 또는 위에 나열된 다른 지원 버전 중 하나입니다.

9.11. 기하학적 기능 및 연산자

무지개 토토 유형포인트, Box, lseg, line, Path, 폴리곤Circlea 큰 기본 지원 기능 및 연산자 세트테이블 9-31, 테이블 9-32테이블 9-33.

주의

"과 동일합니다.운영자,~ =, 평등에 대한 평등 개념포인트, Box, 다각형Circle유형. 이러한 유형 중 일부는도 있습니다.=운영자이지만=동등한 비교영역만. 다른 하나 스칼라 비교 무지개 토토 (<=등) 마찬가지로 영역을 비교하십시오 이러한 유형의 경우.

표 9-31. 무지개 토토 운영자

운영자 설명 example
+ 번역 box '((0,0), (1,1))' + 포인트 '(2.0,0)'
- 번역 Box '((0,0), (1,1))' - 점 '(2.0,0)'
* 스케일링/회전 Box '((0,0), (1,1))' * 포인트 '(2.0,0)'
/ 스케일링/회전 box '((0,0), (2,2))' / 포인트 '(2.0,0)'
# 교차점의 포인트 또는 상자 '((1, -1), (-1,1))' # '((1,1), (-1, -1))'
# 경로 또는 다각형의 점수 # '((1,0), (0,1), (-1,0))'
@-@ 길이 또는 둘레 @-@ path '(0,0), (1,0))'
@@ 센터 @@ Circle '((0,0), 10)'
## 두 번째 피무지개 토토에서 첫 번째 피무지개 토토에 가장 가까운 지점 포인트 '(0,0)'## lseg '((2,0), (0,2))'
<-- 거리의 거리 Circle '((0,0), 1)'<-- Circle '((5,0), 1)'
&& 오버랩? (공통점이 사실입니다.) Box '((0,0), (1,1))'&& 상자 '(0,0), (2,2))'
<< 엄격하게 왼쪽에 있습니까? Circle '((0,0), 1)'<< Circle '((5,0), 1)'
엄격하게 맞습니까? Circle '((5,0), 1)' Circle '((0,0), 1)'
&< 오른쪽으로 확장되지 않습니까? box '((0,0), (1,1))'& <box '(0,0), (2,2))'
& 왼쪽으로 확장되지 않습니까? box '((0,0), (3,3))'& box '(0,0), (2,2))'
<< | 엄격하게 아래에 있습니까? Box '((0,0), (3,3))'<< | 상자 '((3,4), (5,5))'
| 엄격하게 위에 있습니까? Box '((3,4), (5,5))'| 상자 '(0,0), (3,3))'
& <| 위에 확장되지 않습니까? box '((0,0), (1,1))'& <| 상자 '(0,0), (2,2))'
| & 아래로 확장되지 않습니까? Box '((0,0), (3,3))'| & 상자 '(0,0), (2,2))'
<^ 아래는 아래입니다 (터치 허용)? Circle '((0,0), 1)'<^ Circle '(0,5), 1)'
^ 위입니다 (터치 허용)? Circle '((0,5), 1)'^ Circle '(0,0), 1)'
?# 교차? lseg '((-1,0), (1,0))'?# box '((-2, -2), (2,2))'
?- 가로입니까? ?- lseg '((-1,0), (1,0))'
?- 수평으로 정렬됩니까? 포인트 '(1,0)'?- 포인트 '(0,0)'
? | 수직입니까? ? | lseg '((-1,0), (1,0))'
? | 수직으로 정렬 되었습니까? 포인트 '(0,1)'? | 가리키다 '(0,0)'
-| 수직인가? lseg '((0,0), (0,1))'?-| lseg '(0,0), (1,0))'
? || 평행합니까? lseg '((-1,0), (1,0))'? || lseg '((-1,2), (1,2))'
@ 함유? Circle '((0,0), 2)' @ Point '(1,1)'
<@ 포함 또는 켜짐? 포인트 '(1,1)'<@ circle '(0,0), 2)'
~ = 동일? 다각형 '((0,0), (1,1))'~ = 다각형 '((1,1), (0,0))'

참고 :무지개 토토8.2, 격리 연산자@and<@각각~@. 이 이름 여전히 사용 가능하지만 감가 상각되며 결국에는 없습니다 제거됩니다.

표 9-32. 무지개 토토 기능

기능 반환 유형 설명 example
Area (개체) 이중 정밀 지역 면적 (상자 '(0,0), (1,1))')
센터 ​​(개체) 포인트 센터 센터 ​​(상자 '(0,0), (1,2))')
직경 (Circle) 이중 정밀 원의 직경 직경 (원 '(0,0), 2.0)')
높이 (Box) 이중 정밀 상자의 수직 크기 높이 (상자 '(0,0), (1,1))')
isclosed (PATH) 부울 닫힌 경로? isclosed (경로 '((0,0), (1,1), (2,0))')
isopen (PATH) 부울 열린 경로? Isopen (경로 '[(0,0), (1,1), (2,0)]')
길이 (개체) 이중 정밀 길이 길이 (경로 '((-1,0), (1,0))')
npoints (PATH) int 포인트 수 npoints (경로 '[(0,0), (1,1), (2,0)]')
npoints (Polygon) int 포인트 수 npoints (다각형 '((1,1), (0,0))')
pclose (PATH) PATH 폐쇄로 경로 변환 pclose (경로 '[(0,0), (1,1), (2,0)]')
Popen (PATH) PATH 개방으로 경로 변환 Popen (Path '((0,0), (1,1), (2,0))')
RADIUS (Circle) 이중 정밀 원 반경 반경 (원 '(0,0), 2.0)')
너비 (Box) 이중 정밀 상자의 수평 크기 너비 (상자 '(0,0), (1,1))')

표 9-33. 무지개 토토 유형 변환 기능

기능 반환 유형 설명 example
Box (Circle) Box 서클 to box 상자 (원 '(0,0), 2.0)')
Box (포인트, 포인트) Box 상자에 가리 상자 (Point '(0,0)', 포인트 '(1,1)')
Box (Polygon) Box POLYGON to BOX 상자 (다각형 '((0,0), (1,1), (2,0))')
Circle (Box) Circle Box to Circle 원 (상자 '(0,0), (1,1))')
Circle (포인트, 이중 정밀) Circle 중심 및 반경으로 원 (Point '(0,0)', 2.0)
Circle (Polygon) Circle POLYGON TO CIRCE 원 (다각형 '((0,0), (1,1), (2,0))')
LSEG (Box) LSEG 선 세그먼트에 대한 상자 대각선 lseg (상자 '((-1,0), (1,0))')
lseg (포인트, 포인트) lseg 라인 세그먼트 포인트 lseg (포인트 '(-1,0)', 포인트 '(1,0)')
Path (Polygon) PATH POLY to PATH 경로 (다각형 '((0,0), (1,1), (2,0))')
포인트(더블 정도, 더블 정도) 포인트 구성 지점 포인트 (23.4, -44.5)
포인트 (Box) 포인트 상자의 중심 포인트 (상자 '((-1,0), (1,0))')
포인트 (Circle) 포인트 원의 중심 포인트 (원 '(0,0), 2.0)')
포인트 (LSEG) 포인트 라인 세그먼트의 중심 포인트 (LSEG '((-1,0), (1,0))')
포인트 (다각형) 포인트 다각형의 중심 포인트 (다각형 '((0,0), (1,1), (2,0))')
다각형 (Box) Polygon 상자에서 4 점 다각형 다각형 (상자 '(0,0), (1,1))')
폴리곤 (Circle) Polygon 12 포인트 다각형으로 원 다각형 (원 '(0,0), 2.0)')
다각형 (NPTS, Circle) Polygon 서클 toNPTS-Point 다각형 다각형 (12, 원 '(0,0), 2.0)')
다각형 (PATH) Polygon 다각형으로가는 길 다각형 (경로 '((0,0), (1,1), (2,0))')

A의 두 구성 요소 번호에 액세스 할 수 있습니다포인트요점이 배열 인 것처럼 인덱스 0 및 1의 경우. 예를 들어, ifT.Pis포인트칼럼t에서 p [0]을 선택하십시오x를 검색합니다 좌표 및업데이트 t 세트 p [1] = ... ...y 좌표를 변경합니다. 같은 방식으로 유형의 값Box또는LSEG할 수 있습니다 두 배열로 취급포인트값.

the지역함수는 유형Box, Circle, 그리고PATH. 그만큼지역함수는에서만 작동합니다PATH데이터 유형의 지점 인 경우PATH는 중단되지 않습니다. 예를 들어,PATH '((0,0), (0,1), (2,1), (2,2), (1,2), (1,0), (0,0))':: path작동하지 않습니다. 그러나 다음은 시각적으로 동일합니다PATH '((0,0), (0,1), (1,1), (1,2), (2,2), (2,1), (1,1), (1,0), (0,0))':: PATH작동합니다. 교차의 개념 대 비 연속PATH혼란 스럽습니다 위의 둘 다PATH나란히 a 그래프 용지 조각.