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

기하학적 유형메이저 토토 사이트, Box, LSEG, line, Path, PolygonCircle큰 기본 지원 기능 및 연산자 세트가 있습니다.표 9.35, 표 9.36표 9.37.

표 9.35. 기하학적 운영자

운영자

설명

예제

geometric_type + 메이저 토토 사이트geometric_type

두 번째 좌표 추가메이저 토토 사이트첫 번째 인수의 각 지점의 것들에 대한 번역을 수행합니다. 사용 가능메이저 토토 사이트, Box, Path, Circle.

Box '(1,1), (0,0)' + 메이저 토토 사이트 '(2,0)'(3,1), (2,0)

PATH + PATHPATH

두 개의 열린 경로를 연결합니다 (어느 경로 중 하나가 닫히면 NULL을 반환)

Path '[(0,0), (1,1)]' + Path '[(2,2), (3,3), (4,4)]'[(0,0), (1,1), (2,2), (3,3), (4,4)]

geometric_type - 메이저 토토 사이트geometric_type

두 번째 좌표를 빼냅니다메이저 토토 사이트첫 번째 인수의 각 지점의 것들로부터 번역을 수행합니다. 사용 가능메이저 토토 사이트, Box, Path, Circle.

Box '(1,1), (0,0)' - 메이저 토토 사이트 '(2,0)'(-1,1), (-2,0)

geometric_type * 메이저 토토 사이트geometric_type

첫 번째 인수의 각 지점에 두 번째 인수메이저 토토 사이트(지점을 실제 및 상상의 부분으로 나타내는 복소수로 취급하고 표준 복잡한 곱셈을 수행). 두 번째를 해석하면메이저 토토 사이트벡터로서, 이것은 벡터의 길이에 의해 객체의 크기와 원점에서 원점으로부터 원점에서 원점에서 벡터의 각도에 의해 원점 주위를 시계 반대 방향으로 회전하는 것과 같습니다.x축. 사용 가능메이저 토토 사이트, Box,[a] Path, Circle.

Path '((0,0), (1,0), (1,1))' * 메이저 토토 사이트 '(3.0,0)'((0,0), (3,0), (3,3))

Path '((0,0), (1,0), (1,1))' * 메이저 토토 사이트 (Cosd (45), Sind (45))((0,0), (0.707106781865475,0.70710678181865475), (0,1.414213562373095))

geometric_type / 메이저 토토 사이트geometric_type

첫 번째 인수의 각 지점을 두 번째로 나눕니다메이저 토토 사이트16587_16747메이저 토토 사이트벡터로서, 이것은 벡터의 길이에 의해 객체의 크기와 원점에서 원점으로부터 원점에서 원점에서 거리를 스케일링하고 벡터의 각도에 의해 원점 주위에서 시계 방향으로 회전하는 것과 같습니다.x축. 사용 가능메이저 토토 사이트, Box,[a] Path, Circle.

Path '((0,0), (1,0), (1,1))' / Point '(2.0,0)'((0,0), (0.5,0), (0.5,0.5))

Path '((0,0), (1,0), (1,1))' / Point (Cosd (45), Sind (45))((0,0), (0.7071067811865476, -0.70710678181865476), (1.4142135623730951,0))

@-@ geometric_type이중 정밀

총 길이를 계산합니다. 사용 가능LSEG, PATH.

@-@ path '[(0,0), (1,0), (1,1)]'2

@@ geometric_type메이저 토토 사이트

중심 지점을 계산합니다. 사용 가능Box, LSEG, Polygon, Circle.

@@ box '(2,2), (0,0)'(1,1)

# geometric_type정수

메이저 토토 사이트 수를 반환합니다. 사용 가능Path, Polygon.

# path '((1,0), (0,1), (-1,0))'3

geometric_type 19488_19491 geometric_type메이저 토토 사이트

교차점의 지점을 계산하거나 없으면 null. 사용 가능LSEG, line.

lseg '[(0,0), (1,1)]' # lseg '[(1,0), (0,1)]'(0.5,0.5)

Box # BoxBox

두 상자의 교차점을 계산하거나 없습니다.

box '(2,2), (-1, -1)' # box '(1,1), (-2, -2)'(1,1), (-1, -1)

geometric_type ## geometric_type메이저 토토 사이트

두 번째 객체의 첫 번째 객체에 가장 가까운 지점을 계산합니다. 이 유형 쌍에 사용할 수 있습니다 : (메이저 토토 사이트, Box), (메이저 토토 사이트, LSEG), (메이저 토토 사이트, line), (LSEG, Box), (LSEG, LSEG), (line, LSEG).

메이저 토토 사이트 '(0,0)'## lseg '[(2,0), (0,2)]'(1,1)

geometric_type <-- geometric_type이중 정밀

객체 사이의 거리를 계산합니다. 을 제외한 모든 기하학적 유형에 사용할 수 있습니다다각형, 모든 조합의 경우메이저 토토 사이트다른 기하학적 유형과 이러한 추가 유형 쌍의 경우 : (Box, LSEG), (LSEG, line), (Polygon, Circle) (및 정류자 케이스).

Circle '<(0,0), 1'<- circle '<(5,0), 1'3

geometric_type @ geometric_type부울

첫 번째 개체에는 두 번째가 포함되어 있습니까? 이 유형 쌍에 사용할 수 있습니다 : (Box, 메이저 토토 사이트), (Box, Box), (PATH, 메이저 토토 사이트), (Polygon, 메이저 토토 사이트), (Polygon, Polygon), (Circle, 메이저 토토 사이트), (Circle, Circle).

Circle '<(0,0), 2' @ point '(1,1)'t

geometric_type <@ geometric_type부울

첫 번째 객체는 두 번째 또는 두 번째에 포함되어 있습니까? 이 유형 쌍에 사용할 수 있습니다 : (메이저 토토 사이트, Box), (메이저 토토 사이트, LSEG), (메이저 토토 사이트, line), (메이저 토토 사이트, PATH), (메이저 토토 사이트, Polygon), (메이저 토토 사이트, Circle), (Box, Box), (LSEG, Box), (LSEG, line), (Polygon, Polygon), (Circle, Circle).

메이저 토토 사이트 '(1,1)'<@ circle '<(0,0), 2't

geometric_type && geometric_type부울

이 객체가 겹치나요? (공통점의 한 지점은 이것을 사실로 만듭니다.) 사용 가능Box, Polygon, Circle.

box '(1,1), (0,0)'&& box '(2,2), (0,0)'t

geometric_type << geometric_type부울

첫 번째 개체는 엄격하게 두 번째 왼쪽입니까? 사용 가능메이저 토토 사이트, Box, Polygon, Circle.

Circle '<(0,0), 1'<< circle '<(5,0), 1't

geometric_type geometric_type부울

첫 번째 개체는 엄격하게 두 번째 오른쪽입니까? 사용 가능메이저 토토 사이트, Box, Polygon, Circle.

Circle '<(5,0), 1' circle '<(0,0), 1't

Geometric_type &< geometric_type부울

첫 번째 개체는 두 번째 오른쪽으로 확장되지 않습니까? 사용 가능Box, Polygon, Circle.

box '(1,1), (0,0)'& <box '(2,2), (0,0)'t

geometric_type & geometric_type부울

첫 번째 개체는 두 번째 왼쪽으로 확장되지 않습니까? 사용 가능Box, 폴리곤, Circle.

Box '(3,3), (0,0)'& box '(2,2), (0,0)'t

geometric_type << | geometric_type부울

첫 번째 객체는 엄격하게 두 번째 미만입니까? 사용 가능Box, Polygon, Circle.

Box '(3,3), (0,0)'<< | 상자 '(5,5), (3,4)'t

geometric_type | geometric_type부울

첫 번째 개체는 엄격하게 두 번째 위에 있습니까? 사용 가능Box, 다각형, Circle.

Box '(5,5), (3,4)'| box '(3,3), (0,0)'T

geometric_type & <| geometric_type부울

First Object가 Second 이상으로 연장되지 않습니까? 사용 가능Box, 다각형, Circle.

Box '(1,1), (0,0)'& <| 상자 '(2,2), (0,0)'T

Geometric_type | & geometric_type부울

First Object가 Second 이하로 연장되지 않습니까? 사용 가능Box, Polygon, Circle.

Box '(3,3), (0,0)'| & box '(2,2), (0,0)'t

Box <^ Box부울

첫 번째 객체는 두 번째 아래에 있습니다 (가장자리가 터치 할 수 있습니까?)

box '((1,1), (0,0))'<^ box '((2,2), (1,1))'t

메이저 토토 사이트 <^ 메이저 토토 사이트부울

첫 번째 개체가 두 번째 미만입니까? (이 운영자는 이름이 잘못되었습니다.<< |.)

메이저 토토 사이트 '(1,0)'<^ 메이저 토토 사이트 '(1,1)'t

Box ^ Box부울

첫 번째 객체는 두 번째 위에 있습니다 (가장자리가 터치 할 수 있습니까?)

box '((2,2), (1,1))'^ box '((1,1), (0,0))'t

메이저 토토 사이트 ^ 메이저 토토 사이트부울

첫 번째 객체가 엄격하게 두 번째 위에 있습니까? (이 운영자는 이름이 잘못되었습니다.| .)

메이저 토토 사이트 '(1,1)'^ 메이저 토토 사이트 '(1,0)'t

geometric_type ?# geometric_type부울

이 객체가 교차합니까? 이 유형 쌍에 사용할 수 있습니다 : (Box, Box), (LSEG, Box), (LSEG, LSEG), (LSEG, line), (line, Box), (line, line), (PATH, PATH).

lseg '[(-1,0), (1,0)]'?# box '(2,2), (-2, -2)'t

?- line부울

?- LSEG부울

선이 수평인가?

?- lseg '[(-1,0), (1,0)]'t

메이저 토토 사이트 ?- 메이저 토토 사이트부울

메이저 토토 사이트가 수평으로 정렬되어 있습니까 (즉, 동일한 y 좌표가 있습니까?)

메이저 토토 사이트 '(1,0)'?- 메이저 토토 사이트 '(0,0)'T

? | line부울

? | LSEG부울

줄 수직인가?

? | lseg '[(-1,0), (1,0)]'F

메이저 토토 사이트 ? | 메이저 토토 사이트부울

메이저 토토 사이트가 수직으로 정렬되어 있습니까 (즉, 동일한 x 좌표가 있습니까?)

메이저 토토 사이트 '(0,1)'? | 메이저 토토 사이트 '(0,0)'T

line -| 라인부울

LSEG -| LSEG부울

선이 수직인가?

lseg '[(0,0), (0,1)]'?-| lseg '[(0,0), (1,0)]'T

line ? || line부울

LSEG ? || LSEG부울

선이 평행합니까?

lseg '[(-1,0), (1,0)]'? || lseg '[(-1,2), (1,2)]'T

geometric_type ~ = geometric_type부울

이 객체가 동일합니까? 사용 가능메이저 토토 사이트, Box, Polygon, Circle.

다각형 '((0,0), (1,1))'~ = 다각형 '((1,1), (0,0))'t

[a] 회전이 연산자가있는 상자는 코너 메이저 토토 사이트 만 움직입니다. 상자는 여전히 축과 평행 한 측면을 갖는 것으로 간주됩니다. 따라서 진정한 회전과 같이 상자의 크기는 보존되지 않습니다.


주의

동일운영자,~ =, 일반적인 평등 개념을 나타냅니다메이저 토토 사이트, Box, 다각형Circle유형. 기하학적 유형 중 일부에는도 있습니다.=운영자이지만=동등한 비교지역만. 다른 스칼라 비교 연산자 (<=등), 이러한 유형에 사용할 수있는 경우, 마찬가지로 영역을 비교합니다.

Note

PostgreSQL8.2, 격리 연산자@and<@각각~@. 이 이름은 여전히 사용할 수 있지만 더 이상 사용되지 않으며 결국 제거됩니다.

표 9.36. 기하학적 기능

기능

설명

예제

Area(geometric_type) →이중 정밀

면적을 계산합니다. 사용 가능Box, PATH, Circle. 에이Path입력이 닫히고 그렇지 않으면 NULL이 반환됩니다. 또한PATH자체 간격이 있고 결과는 의미가 없을 수 있습니다.

면적 (상자 '(2,2), (0,0)')4

센터(geometric_type) →메이저 토토 사이트

센터 메이저 토토 사이트를 계산합니다. 사용 가능Box, Circle.

센터 (Box '(1,2), (0,0)')(0.5,1)

대각선(Box) →LSEG

박스 대각선 추출 라인 세그먼트 (동일LSEG (Box)).

Diagonal (Box '(1,2), (0,0)')[(1,2), (0,0)]

직경(Circle) →이중 정밀도

원의 직경을 계산합니다.

직경 (원 '<(0,0), 2')4

높이(Box) →더블 정밀도

상자의 수직 크기를 계산합니다.

높이 (상자 '(1,2), (0,0)')2

isclosed(PATH) →부울

경로가 닫혔습니까?

isclosed (경로 '((0,0), (1,1), (2,0))')T

Isopen(PATH) →부울

경로가 열려 있습니까?

Isopen (경로 '[(0,0), (1,1), (2,0)]')t

길이(geometric_type) →이중 정밀도

총 길이를 계산합니다. 사용 가능LSEG, PATH.

길이 (경로 '((-1,0), (1,0))')4

npoints(geometric_type) →정수

메이저 토토 사이트 수를 반환합니다. 사용 가능PATH, 다각형.

npoints (경로 '[(0,0), (1,1), (2,0)]')3

pclose(PATH) →PATH

경로를 닫힌 양식으로 변환합니다.

PCLOSE (Path '[(0,0), (1,1), (2,0)]')((0,0), (1,1), (2,0))

Popen(Path) →Path

경로를 열린 양식으로 변환합니다.

Popen (Path '(0,0), (1,1), (2,0))[(0,0), (1,1), (2,0)]

반경(Circle) →이중 정밀

원의 반경을 계산합니다.

RADIUS (Circle '<(0,0), 2')2

Slope(메이저 토토 사이트, 메이저 토토 사이트) →이중 정밀

두 지점을 통해 그려진 선의 경사를 계산합니다.

경사 (Point '(0,0)', 메이저 토토 사이트 '(2,1)')0.5

너비(Box) →이중 정밀도

상자의 수평 크기를 계산합니다.

너비 (Box '(1,2), (0,0)')1


표 9.37. 기하학적 유형 변환 기능

기능

설명

example (s)

Box(Circle) →Box

원 안에 새겨진 상자를 계산합니다.

Box (Circle '<(0,0), 2')(1.414213562373095,1.414213562373095), (-1.414213562373095, -1.414213562373095)

Box(메이저 토토 사이트) →Box

지점을 빈 상자로 변환합니다.

상자 (Point '(1,0)')(1,0), (1,0)

Box(메이저 토토 사이트, 메이저 토토 사이트) →Box

두 코너 메이저 토토 사이트를 상자로 변환합니다.

상자 (Point '(0,1)', 메이저 토토 사이트 '(1,0)')(1,1), (0,0)

Box(Polygon) →Box

다각형의 경계 상자를 계산합니다.

Box (다각형 '((0,0), (1,1), (2,0))')(2,1), (0,0)

bound_box(Box, Box) →Box

두 상자의 경계 상자를 계산합니다.

bound_box (Box '(1,1), (0,0)', Box '(4,4), (3,3)')(4,4), (0,0)

Circle(Box) →Circle

가장 작은 원을 둘러싸는 상자를 계산합니다.

Circle (Box '(1,1), (0,0)')<(0.5,0.5), 0.7071067811865476

Circle(메이저 토토 사이트, 이중 정밀도) →Circle

중심과 반경에서 원을 구성합니다.

Circle (Point '(0,0)', 2.0)<(0,0), 2

Circle(다각형) →Circle

다각형을 원으로 변환합니다. 원의 중심은 다각형 메이저 토토 사이트의 위치의 평균이며, 반경은 그 중심에서 다각형 지점의 평균 거리는입니다..

Circle (다각형 '((0,0), (1,3), (2,0))<(1,1), 1.6094757082487299

line(메이저 토토 사이트, 메이저 토토 사이트) →line

두 지점을 라인으로 변환합니다.

line (point '(-1,0)', 메이저 토토 사이트 '(1,0)')0, -1,0

LSEG(Box) →LSEG

선 세그먼트로 상자의 대각선을 추출합니다.

lseg (Box '(1,0), (-1,0)')[(1,0), (-1,0)]

LSEG(메이저 토토 사이트, 메이저 토토 사이트) →LSEG

두 개의 엔드 메이저 토토 사이트에서 라인 세그먼트를 구성합니다.

lseg (메이저 토토 사이트 '(-1,0)', 메이저 토토 사이트 '(1,0)')[(-1,0), (1,0)]

PATH(다각형) →PATH

다각형을 동일한 메이저 토토 사이트 목록으로 닫힌 경로로 변환합니다.

Path (Polygon '((0,0), (1,1), (2,0))')((0,0), (1,1), (2,0))

메이저 토토 사이트(이중 정밀, 이중 정밀도) →메이저 토토 사이트

좌표에서 메이저 토토 사이트를 구성합니다.

메이저 토토 사이트 (23.4, -44.5)(23.4, -44.5)

메이저 토토 사이트(Box) →메이저 토토 사이트

상자 중심을 계산합니다.

Point (Box '(1,0), (-1,0)')(0,0)

메이저 토토 사이트(Circle) →메이저 토토 사이트

원의 중심을 계산합니다.

메이저 토토 사이트 (원 '<(0,0), 2')(0,0)

메이저 토토 사이트(LSEG) →메이저 토토 사이트

라인 세그먼트의 중심을 계산합니다.

Point (lseg '[(-1,0), (1,0)]')(0,0)

메이저 토토 사이트(다각형) →메이저 토토 사이트

다각형의 중심을 계산합니다 (다각형 메이저 토토 사이트의 위치 평균).

메이저 토토 사이트 (다각형 '((0,0), (1,1), (2,0))(1,0.33333333333333)

다각형(Box) →다각형

상자를 4 점 다각형으로 변환합니다.

다각형 (Box '(1,1), (0,0)')((0,0), (0,1), (1,1), (1,0))

다각형(Circle) →Polygon

원을 12 점 다각형으로 변환합니다.

다각형 (원 '<(0,0), 2')((-2,0), (-1.7320508075688774,0.999999999999999), (-1.0000000000000002,1.732050807568872), (-1), (-1. 224606353822373E-16,2), (0.99999999999996,1.73208075688774), (1.7320508075688877,1.00000000000007), (2,2 .449212707644754545454545454554545454545454545454545454545454545454545454545545454545545454545545455454554554545455454545455454545455455455455454545455455455455454545545454545454545545454545454545454530776677667760999999499499499999999999999999999999999999994AS, (1.00000000000000000, -1.7320508075688767), (3 .673819061467132E-16, -2), (-0.9999999999999987, -1.7320807568878), (-1.73208075688767, -1.00000000000009)).

다각형(정수, Circle) →Polygon

원으로 변환n-메이저 토토 사이트 다각형.

다각형 (4, Circle '<(3,0), 1')((2,0), (3,1), (4,1.2246063538223773E-16), (3, -1))

Polygon(PATH) →다각형

닫힌 경로를 동일한 메이저 토토 사이트 목록으로 다각형으로 변환합니다.

POLYGON (PATH '((0,0), (1,1), (2,0))')((0,0), (1,1), (2,0))


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

수정 제출

문서에 올바르지 않은 내용이 있으면 일치하지 않습니다. 특정 기능에 대한 귀하의 경험 또는 추가 설명이 필요합니다. 사용이 양식문서 문제를보고하려면