/ * Có lẽ điều này giúp:
Azimuth - pi / 2 là hướng ra ngoài của các cạnh của đa giác RHR:
Dưới đây là một ví dụ PostGIS, bạn có thể tạo bảng bldg117862 bằng cách sử dụng câu lệnh ở cuối. SRID là EPSG 2271 (PA StatePlane North feet) và hình học là Đa giác. Để trực quan hóa trong ArcGIS 10, hãy dán truy vấn / truy vấn con vào kết nối Lớp truy vấn vào postgis sau khi tạo bảng bldg117862. * /
- === BẮT ĐẦU SỐ LƯỢNG ===
/ * Truy vấn bên ngoài cung cấp hướng của các trực giao bên ngoài và tạo các đường trực giao bên ngoài có độ dài bằng nhau như các cạnh của các cạnh từ trung điểm của các cạnh.
Hướng đối diện chiếm ưu thế sẽ là tổng chiều dài, được nhóm theo hướng, theo thứ tự giảm dần * /
CHỌN line_id là side_id, length, độ (orthoaz) làm định hướng, st_makeline (st_setsrid (st_line_interpolate_point (geom, .5), 2271), st_setsrid (st_makepoint (st_x (st_line_inter) orthoaz))), st_y (st_line_interpolate_point (geom, .5)) + (length * (cos (orthoaz)))), 2271)) là geom từ
- truy vấn phụ bên ngoài tạo các đường từ các cặp điểm của các cạnh, tính góc phương vị (orthoaz) của trực giao cho mỗi phân đoạn
(CHỌN bldg2009gid, line_id, st_length (st_makeline (điểm bắt đầu, điểm cuối)) :: số (10,2) dưới dạng độ dài, góc phương vị (điểm bắt đầu, điểm cuối), góc phương vị (điểm bắt đầu, điểm cuối) - pi () / 2 là orthoaz, stim điểm bắt đầu, điểm cuối) là geom từ
/ * truy vấn con trong cùng - sử dụng Gener_series () để phân tách đa giác xây dựng thành các cặp điểm bắt đầu / điểm cuối của hai bên - note1 - buộc quy tắc bàn tay phải để đảm bảo định hướng chung cho tất cả các cạnh đa giác note2 - ví dụ sử dụng đa giác, cho đa giác hình học () có thể gỡ bỏ */
(CHỌN tạo_series (1, npoint (exteriorring (hình học (st_forceRHR (geom), 1))) - 1) dưới dạng line_id, gid như bldg2009gid, pointn (exteriorring (hình học (st_forceRHR (ge), 1) npoint (exteriorring (hình học (st_forceRHR (geom), 1))) - 1)) là điểm bắt đầu, pointn (exteriorring (hình học (st_forceRHR (geom), 1)), created_series (2, npoint (exteriorr ), 1))))) làm điểm cuối từ bldg117862) là t1) là t2
- === KẾT THÚC ===
- các câu lệnh tạo / chèn bảng bldg117862
THIẾT LẬP STANDARD_CONFORMING_STRING TO ON; CHỌN DropGeometryColumn ('', 'bldg117862', 'geom'); BẢNG DROP "bldg117862"; BẮT ĐẦU; TẠO BẢNG "bldg117862" (gid serial PRIMARY KEY, "Motherpin" varchar (14), "taxpin" varchar (14), "status" varchar (15), "area" dạng số, "trước_area" số, "pct_change" số, "hình ảnh" varchar (133), "mappage" varchar (6), "sref_gid" int4, "e_address" varchar (19), "a_address" varchar (19), "perim" số, "card" int4, "a_addnum" int4, "e_street" varchar (50), "a_street" varchar (50), "e_hsnum" varchar (10)); CHỌN AddGeometryColumn ('', 'bldg117862', 'geom', '2271', 'MULTIPOLYGON', 2); 0106000020DF080000010000000103000020DF080000010000000B0000008C721D6C98AC34415E2C5BB9D3E32541AE56DE17BEAC34410613E5A0A0E325411AB6C794AEAC3441BA392FE372E32541C89C38429DAC3441643857628AE325418C299A9095AC3441F66C29B573E32541983F02087EAC34413080AA9F93E325419BAC3C0A86AC3441AC1F3B3DABE32541803A40B974AC3441E8CF3DB9C2E325413E3758C186AC3441D0AAB0E7F7E325410AAAA5429BAC3441BA971217DCE325418C721D6C98AC34415E2C5BB9D3E32541' ); TẠO INDEX "bldg117862_geom_gist" ON "bldg117862" bằng cách sử dụng ý chính ("geom" gist_geometry_ops); KẾT THÚC;