이 문서는 지원되지 않는 PostgreSQL 버전에 대한 것입니다.
다음에 대한 동일한 페이지를 보고 싶을 수도 있습니다.무지개 토토 PostgreSQL : 문서 : 17 : 9.11. 기하학적 기능 및 연산자버전 또는 위에 나열된 다른 지원 버전 중 하나를 사용하세요.

9.11. 기하학적 함수와 운영자

스포츠 토토 베트맨 유형, 상자, lseg, 라인, 경로, 다각형큰 기본 지원 함수 및 연산자 집합(다음에 표시됨)테이블 9-31, 테이블 9-32테이블 9-33.

주의

참고하세요"같은"연산자,~=은 일반적인 개념을 나타냅니다. 에 대한 평등, 상자, 다각형유형. 이러한 유형 중 일부에는=연산자이지만=동일한 비교지역전용. 다른 스칼라 비교 연산자(<=등등) 마찬가지로 이들 영역을 비교합니다. 유형.

표 9-31. 스포츠 토토 베트맨 연산자

운영자 설명
+ 번역 상자 '((0,0),(1,1))' + 점 '(2.0,0)'
- 번역 상자 '((0,0),(1,1))' - 점 '(2.0,0)'
* 크기 조정/회전 상자 '((0,0),(1,1))' * 포인트 '(2.0,0)'
/ 크기 조정/회전 상자 '((0,0),(2,2))' / 포인트 '(2.0,0)'
# 교점 또는 교차점 상자 '((1,-1),(-1,1))' # 상자 '((1,1),(-2,-2))'
# 경로 또는 다각형의 점 수 # 경로 '((1,0),(0,1),(-1,0))'
@-@ 길이 또는 둘레 @-@ 경로 '((0,0),(1,0))'
@@ 센터 @@ 원 '((0,0),10)'
## 두 번째 피연산자의 첫 번째 피연산자와 가장 가까운 지점 포인트 '(0,0)' ## lseg '((2,0),(0,2))'
<- 사이의 거리 원 '((0,0),1)' <- 원 '((5,0),1)'
&& 겹침? (한 가지 공통점이 이를 사실로 만듭니다.) 상자 '((0,0),(1,1))' && 상자 '((0,0),(2,2))'
<< 엄격히 다음 중 하나입니까? 원 '((0,0),1)' << 원 '((5,0),1)'
엄격히 옳은가요? 원 '((5,0),1)' 원 '((0,0),1)'
&< 오른쪽으로 확장되지 않습니까? 상자 '((0,0),(1,1))' &< 상자 '((0,0),(2,2))'
& 왼쪽으로 확장되지 않습니까? 박스 '((0,0),(3,3))' & 박스 '((0,0),(2,2))'
<<| 엄격히 아래에 해당합니까? 상자 '((0,0),(3,3))' <<| 상자 '((3,4),(5,5))'
| 엄격히 위에 있습니까? 상자 '((3,4),(5,5))' | 상자 '((0,0),(3,3))'
&<| 위로 확장되지 않습니까? 상자 '((0,0),(1,1))' &<| 상자 '((0,0),(2,2))'
|& 아래로 확장되지 않습니까? 상자 '((0,0),(3,3))' |& 상자 '((0,0),(2,2))'
<^ 아래는 (접촉 허용)입니까? 원 '((0,0),1)' <^ 원 '((0,5),1)'
^ 위(접촉 허용)입니까? 원 '((0,5),1)' ^ 원 '((0,0),1)'
?# 교차? lseg '((-1,0),(1,0))' ?# 상자 '((-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))'
@ 포함? 원 '((0,0),2)' @ 점 '(1,1)'
<@ 다음에 포함되어 있습니까? 점 '(1,1)' <@ 원 '((0,0),2)'
~= 같은데요? 다각형 '((0,0),(1,1))' ~= 다각형 '((1,1),(0,0))'

참고:이전PostgreSQL8.2, 봉쇄 연산자@그리고<@각각 호출되었습니다~그리고@. 이 이름들은 여전히 사용 가능하지만 더 이상 사용되지 않으며 결국에는 사용 가능해질 예정입니다. 제거되었습니다.

표 9-32. 기하학적 스포츠 토토 베트맨

기능 반환 유형 설명
지역(객체) 배정밀도 지역 면적(상자 '((0,0),(1,1))')
센터(객체) 센터 center(스포츠 토토 베트맨 '((0,0),(1,2))')
직경() 배정밀도 원의 직경 직경(원 '((0,0),2.0)')
높이(상자) 배정밀도 상자의 수직 크기 높이(상자 '((0,0),(1,1))')
닫힘(경로) 부울 닫힌 길? 닫힘(경로 '((0,0),(1,1),(2,0))')
isopen(경로) 부울 열린 길이요? isopen(경로 '[(0,0),(1,1),(2,0)]')
길이(객체) 배정밀도 길이 길이(경로 '((-1,0),(1,0))')
n포인트(경로) int 포인트 수 n포인트(경로 '[(0,0),(1,1),(2,0)]')
n포인트(다각형) int 포인트 수 npoints(다각형 '((1,1),(0,0))')
pclose(경로) 경로 경로를 닫힌 경로로 변환 pclose(경로 '[(0,0),(1,1),(2,0)]')
팝픈(경로) 경로 경로를 열기로 변환 popen(경로 '((0,0),(1,1),(2,0))')
반경() 배정밀도 원의 반경 반경(원 '((0,0),2.0)')
폭(상자) 배정밀도 상자의 가로 크기 너비(상자 '((0,0),(1,1))')

표 9-33. 스포츠 토토 베트맨 유형 변환 함수

기능 반환 유형 설명
상자() 상자 원에서 상자로 스포츠 토토 베트맨(원 '((0,0),2.0)')
상자(, 포인트) 상자 상자를 가리킴 box(포인트 '(0,0)', 포인트 '(1,1)')
상자(다각형) 상자 다각형을 상자로 상자(다각형 '((0,0),(1,1),(2,0))')
원(상자) 상자를 동그라미로 원(상자 '((0,0),(1,1))')
원(, 더블 정밀도) 원의 중심과 반경 원(점 '(0,0)', 2.0)
원(다각형) 다각형을 원으로 원(다각형 '((0,0),(1,1),(2,0))')
lseg(상자) lseg 선분에 대한 대각선 상자 lseg(상자 '((-1,0),(1,0))')
lseg(포인트, 포인트) lseg 선분을 가리킴 lseg(포인트 '(-1,0)', 포인트 '(1,0)')
경로(다각형) 경로 경로에 대한 다각형 경로(다각형 '((0,0),(1,1),(2,0))')
(배정밀도, 배정밀도) 구성 지점 포인트(23.4, -44.5)
점(상자) 상자 중앙 점(상자 '((-1,0),(1,0))')
포인트() 포인트 원의 중심 점(원 '((0,0),2.0)')
포인트(lseg) 선분의 중심 point(lseg '((-1,0),(1,0))')
점(다각형) 다각형의 중심 점(다각형 '((0,0),(1,1),(2,0))')
다각형(상자) 다각형 상자를 4점 다각형으로 다각형(상자 '((0,0),(1,1))')
다각형() 다각형 원을 12점 다각형으로 다각형(원 '((0,0),2.0)')
다각형(npts, ) 다각형 동그라미로npts-점 다각형 다각형(12, 원 '((0,0),2.0)')
다각형(경로) 다각형 다각형 경로 다각형(경로 '((0,0),(1,1),(2,0))')

a의 두 구성요소 번호에 접근할 수 있습니다.마치 포인트가 다음과 같은 배열인 것처럼 보입니다. 인덱스 0과 1. 예를 들어 다음과 같습니다.t.p포인트그럼 열선택 p[0] t에서X 좌표를 검색하고업데이트 t SET p[1] = ...Y 좌표를 변경합니다. 에서 같은 방식으로 유형의 값상자또는lseg두 개의 배열로 처리될 수 있습니다.포인트값.

지역함수는 다음에서 작동합니다. 유형상자, 경로. 그만큼지역함수는 다음에서만 작동합니다.경로다음의 경우 데이터 유형 의 포인트경로교차하지 않습니다. 예를 들어,경로 '((0,0),(0,1),(2,1),(2,2),(1,2),(1,0),(0,0))'::PATH작동하지 않습니다. 그러나 다음은 시각적으로 동일합니다.경로 '((0,0),(0,1),(1,1),(1,2),(2,2),(2,1),(1,1),(1,0),(0,0))'::PATH작동합니다. 교차라는 개념이 있다면 교차하지 않음경로혼란스럽습니다. 둘 다 그리세요. 위의 것 중경로조각에 나란히 그래프 용지.