Các kèo bóng đá c1 dữ liệu hình học đại diện cho các đối tượng không gian hai chiều.Bảng 8.20Hiển thị kèo bóng đá c1 có sẵn trongPostgreSQL.
Bảng 8.20. kèo bóng đá c1
tên | Kích thước lưu trữ | Mô tả | Đại diện |
---|---|---|---|
điểm |
16 byte | Điểm trên mặt phẳng | (x, y) |
Line |
32 byte | dòng vô hạn | a, b, c |
LSEG |
32 byte | Phân đoạn dòng hữu hạn | ((x1, y1), (x2, y2)) |
Box |
32 byte | Hộp kèo bóng đá c1 chữ nhật | ((x1, y1), (x2, y2)) |
đường dẫn |
16+16N byte | Đường dẫn đóng (tương tự như đa giác) | ((x1, y1), ...) |
đường dẫn |
16+16N byte | đường dẫn mở | [(x1, y1), ...] |
Polygon |
40+16N byte | Polygon (tương tự như đường dẫn đóng) | ((x1, y1), ...) |
Circle |
24 byte | Circle | <(x, y), r (điểm trung tâm và bán kính) |
Một bộ chức năng và toán tử phong phú có sẵn để thực hiện các hoạt động kèo bóng đá c1 khác nhau như tỷ lệ, dịch, xoay và xác định giao điểm. Chúng được giải thích trongPhần 9.11.
Điểm là khối xây dựng hai chiều cơ bản cho kèo bóng đá c1. Giá trị của loạiđiểm
được chỉ định bằng cách sử dụng một trong kèo bóng đá c1 cú pháp sau:
(x
,y
)x
,Y
WHEREx
vày
là tọa độ tương ứng, dưới dạng số điểm nổi.
Điểm là đầu ra bằng cú pháp đầu tiên.
kèo bóng đá c1 dòng được biểu diễn bằng phương trình tuyến tínhA
x +B
Y +C
= 0, trong đóA
vàB
không phải là cả bằng không. Giá trị của kèo bóng đá c1Line
là đầu vào và đầu ra ở dạng sau:
A
,B
,C
Ngoài ra, bất kỳ biểu mẫu nào sau đây đều có thể được sử dụng cho đầu vào:
[(x1
,Y1
), (x2
,Y2
)]]x1
,Y1
), (x2
,Y2
))x1
,Y1
), (x2
,Y2
)x1
,Y1
,x2
,Y2
WHERE(
vàx1
,Y1
)(
là hai điểm khác nhau trên dòng.x2
,Y2
)
Phân đoạn dòng được biểu diễn bằng các cặp điểm là điểm cuối của phân đoạn. Giá trị của kèo bóng đá c1LSEG
được chỉ định bằng bất kỳ cú pháp nào sau đây:
[(x1
,Y1
), (x2
,Y2
)]]x1
,Y1
), (x2
,Y2
))x1
,Y1
), (x2
,Y2
)x1
,Y1
,x2
,Y2
WHERE(
vàx1
,Y1
)(
là điểm cuối của phân đoạn dòng.x2
,Y2
)
Phân đoạn dòng được đầu ra bằng cú pháp đầu tiên.
Hộp được biểu diễn bằng các cặp điểm đối diện với các góc của hộp. Giá trị của kèo bóng đá c1Box
được chỉ định bằng bất kỳ cú pháp nào sau đây:
((x1
,Y1
), (x2
,Y2
))x1
,Y1
), (x2
,Y2
)x1
,Y1
,x2
,Y2
ở đâu(
vàx1
,Y1
)(
Có hai góc đối diện của hộp.x2
,Y2
)
Hộp được đầu ra bằng cú pháp thứ hai.
Bất kỳ hai góc đối diện nào cũng có thể được cung cấp trên đầu vào, nhưng kèo bóng đá c1 giá trị sẽ được sắp xếp lại khi cần thiết để lưu trữ kèo bóng đá c1 góc trên bên phải và dưới bên trái, theo thứ tự đó.
Đường dẫn được biểu diễn bằng danh sách kèo bóng đá c1 điểm được kết nối. Đường dẫn có thể làMở, trong đó điểm đầu tiên và cuối cùng trong danh sách được coi là không được kết nối hoặcĐóng, trong đó kèo bóng đá c1 điểm đầu tiên và cuối cùng được coi là kết nối.
Giá trị kèo bóng đá c1đường dẫn
được chỉ định bằng cách sử dụng bất kỳ cú pháp nào sau đây:
[(x1
,Y1
), ..., (XN
,yn
)]]x1
,Y1
), ..., (xn
,yn
)))x1
,Y1
), ..., (XN
,yn
)x1
,Y1
, ... ,xn
,yn
)x1
,Y1
, ... ,xn
,yn
Trong đó kèo bóng đá c1 điểm là điểm cuối của kèo bóng đá c1 phân đoạn dòng bao gồm đường dẫn. Dấu ngoặc vuông ([]
) chỉ ra một đường dẫn mở, trong khi dấu ngoặc đơn (()
) Cho biết đường dẫn đóng. Khi dấu ngoặc đơn ngoài cùng bị bỏ qua, như trong cú pháp thứ ba đến thứ năm, một đường dẫn đóng được giả định.
Đường dẫn là đầu ra bằng cú pháp thứ nhất hoặc thứ hai, nếu thích hợp.
Polygons được thể hiện bằng danh sách kèo bóng đá c1 điểm (kèo bóng đá c1 đỉnh của đa giác). Đa giác rất giống với kèo bóng đá c1 đường dẫn kín, nhưng được lưu trữ khác nhau và có tập hợp kèo bóng đá c1 thói quen hỗ trợ riêng của chúng.
Giá trị của kèo bóng đá c1Polygon
được chỉ định bằng bất kỳ cú pháp nào sau đây:
((x1
,Y1
), ..., (xn
,yn
))x1
,Y1
), ..., (xn
,yn
)x1
,Y1
, ... ,xn
,yn
)x1
,Y1
, ... ,xn
,yn
Trong đó kèo bóng đá c1 điểm là điểm cuối của kèo bóng đá c1 phân đoạn dòng bao gồm ranh giới của đa giác.
Polygons là đầu ra bằng cú pháp đầu tiên.