คำถามติดแท็ก postgis

PostGIS เป็นส่วนเสริมสำหรับฐานข้อมูลเชิงสัมพันธ์เชิงวัตถุของ PostgreSQL ที่เพิ่มการรองรับวัตถุทางภูมิศาสตร์

3
ฉันจะรวม / ยุบบริเวณใกล้เคียงและเส้นถนนคู่ขนาน (เช่นถนนสองเลน) เป็นเส้นเดียวได้อย่างไร
ฉันมี shapefile จาก OSM ซึ่งมีถนนทุกสายในเมือง ถนนที่ใหญ่กว่า (เช่นรถสองทาง) ดูเหมือนจะมีเส้นคู่ขนาน 2 เส้น ฉันต้องการยุบ / รวมสิ่งเหล่านั้นเป็น 1 บรรทัดเพื่อให้ฉันสามารถส่งออกและทำให้พวกเขาเป็นอย่างดีในแอปพลิเคชัน 3D ภายนอก (ถนนที่ทับซ้อนกัน 2 แห่งจะซับซ้อนและจะดูแปลกในแบบ 3 มิติ) ฉันจะบรรลุสิ่งนี้ด้วย QGIS หรือ PostGIS ได้อย่างไร ฉันไม่กังวลเกี่ยวกับการสูญเสียความแม่นยำเล็กน้อย (ภายในไม่กี่เมตร) และต้องการให้ผลลัพธ์ที่เกิดขึ้นเป็นเส้นเดี่ยว (ระหว่างจุดศูนย์กลาง) เส้นคู่ขนานในปัจจุบัน ขอขอบคุณ. (นี่คือตัวอย่างของเส้นถนนคู่ที่ฉันต้องการรวม)
23 qgis  postgis  line  road 

4
PostGIS จุดที่ใกล้ที่สุดด้วย ST_Distance, kNN
ฉันต้องการได้รับในแต่ละองค์ประกอบในหนึ่งตารางจุดที่ใกล้เคียงที่สุดของตารางอื่น ตารางแรกมีสัญญาณไฟจราจรและทางเข้าที่สองเป็นโถงทางเข้าของเมือง สิ่งหนึ่งคือฉันไม่สามารถใช้ฟังก์ชัน ST_ClosestPoint ได้และฉันต้องใช้ฟังก์ชัน ST_Distance และรับระเบียน min (ST_distance) แต่ฉันติดคำถามในการสร้าง CREATE TABLE traffic_signs ( id numeric(8,0) ), "GEOMETRY" geometry, CONSTRAINT traffic_signs_pkey PRIMARY KEY (id), CONSTRAINT traffic_signs_id_key UNIQUE (id) ) WITH ( OIDS=TRUE ); CREATE TABLE entrance_halls ( id numeric(8,0) ), "GEOMETRY" geometry, CONSTRAINT entrance_halls_pkey PRIMARY KEY (id), CONSTRAINT entrance_halls_id_key UNIQUE …

3
กำลังดำเนินการค้นหาขอบเขตกล่องใน PostGIS? [ปิด]
ปิด. คำถามนี้เป็นคำถามปิดหัวข้อ ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้เป็นไปตามหัวข้อสำหรับระบบแลกเปลี่ยนข้อมูลทางภูมิศาสตร์ของกองซ้อน ปิดเมื่อปีที่แล้ว ผมมีตาราง PostgreSQL มีเกือบ 2 ล้านแถวด้วยความยาวลาดพร้าวเขตข้อมูลในแบบฟอร์มcoordinatesPOINT(-73.4938 33.2405) สมมติว่ามีดัชนีเชิงพื้นที่ในเขตข้อมูลนั้นวิธีที่มีประสิทธิภาพมากที่สุดและเร็วที่สุดในการเลือกแถวทั้งหมดภายในกล่องขอบเขตโดยพลการคืออะไร กล่องเป็นเหมือน,SW long-lat: -74.0042 40.7688NE long-lat: -73.8809 40.7984

4
รวมรูปหลายเหลี่ยมที่อยู่ติดกัน
ฉันต้องการทดสอบ adjacency บนเลเยอร์พัสดุ (รูปหลายเหลี่ยม) และรวมเข้าด้วยกันหากพวกเขาเหมาะสมกับเกณฑ์บางอย่าง (อาจเป็นขนาด) ตามภาพด้านล่างฉันต้องการรวมรูปหลายเหลี่ยม 1,2,3 และ 4 แต่ไม่ใช่ 5 ฉันมีสองปัญหา: ST_TOUCHESส่งกลับ TRUE ถ้าเพียงแค่สัมผัสมุมและไม่ใช่ส่วนของเส้น ฉันคิดว่าฉันต้องการ ST_RELATE เพื่อตรวจสอบเซ็กเมนต์บรรทัดที่แชร์ เป็นการดีที่ฉันต้องการรวมรูปหลายเหลี่ยมที่อยู่ติดกันทั้งหมดไว้ในที่เดียว แต่ฉันไม่แน่ใจว่าจะขยายขนาดเกินสองได้อย่างไร - ในผสาน 1,2,3 และ 4 (และอาจมากกว่ากับข้อมูลจริง) ในรอบเดียว ST_TOUCHESโครงสร้างที่ผมมีตอนนี้จะขึ้นอยู่กับตัวเองเข้าร่วมใน ข้อมูลของเล่น CREATE TABLE testpoly AS SELECT 1 AS id, ST_PolyFromText('POLYGON ((0 0, 10 0, 10 20, 00 20, 0 0 ))') …
22 postgis  merge  union 

3
หลักการตั้งชื่อคอลัมน์เรขาคณิต - 'geom' หรือ 'the_geom'
ฉันเริ่มโครงการ PostGIS ครั้งแรกของฉันและในหนังสือและแบบฝึกหัดต่าง ๆ ฉันได้เห็นคอลัมน์รูปทรงเรขาคณิตที่มีป้ายกำกับว่า 'geom' หรือ 'the_geom' เป็นธรรมดามากกว่าอื่น ๆ ? นอกจากนี้มีเหตุผลที่ดีที่จะใช้ 'geom' / 'the_geom' แทนที่จะเป็นชื่อที่อธิบายเพิ่มเติมสำหรับคอลัมน์รูปทรงเรขาคณิตหรือไม่ (เช่น 'centre_point' สำหรับจุดกึ่งกลางของสถานที่) เราไม่ติดป้ายกำกับคอลัมน์คอลัมน์แบบดั้งเดิม 'the_int' หรือ 'the_string' ดังนั้นทำไมจึงติดป้ายคอลัมน์รูปทรงเรขาคณิตด้วยวิธีนี้

1
การเปรียบเทียบโซลูชันการเข้ารหัสภูมิศาสตร์ (เช่น Gisgraphy & PostGIS 2.0) [ปิด]
ปิด คำถามนี้จะต้องมีมากขึ้นมุ่งเน้น ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้มุ่งเน้นที่ปัญหาเดียวโดยแก้ไขโพสต์นี้ ปิดให้บริการใน4 ปีที่แล้ว เนื่องจากผมมั่นใจว่าพวกคุณหลายคนทราบดีว่า PostGIS ได้เปิดตัวเวอร์ชัน 2.0 ในที่สุดและรวมอยู่ในรุ่นนี้พวกเขายังได้สร้าง geocoder (ดู: http://postgis.net/docs/Extras.html ) แม้ว่าฉันจะรู้ว่า V2 เพิ่งเปิดตัว แต่ฉันอยากรู้ว่าใครมีโอกาสเปรียบเทียบโซลูชันโอเพนซอร์สอื่น ๆ เช่น gisgraphy.com ฉันสนใจที่จะเข้าใจความแตกต่างในแง่ของความเร็วคุณสมบัติ / ตัวเลือกความถูกต้องและความง่ายในการใช้ชุดข้อมูลของตัวเอง

1
สถานะของ Postgis 2.0 ทอพอโลยีรองรับใน QGIS คืออะไร?
โพสต์นี้เกี่ยวข้องกับเหตุการณ์ที่เปลี่ยนแปลงอย่างรวดเร็ว หลังจากติดตามการพัฒนาของ Postgis ในช่วง 6 เดือนที่ผ่านมาฉันได้สังเกตุเห็นคุณลักษณะที่น่าสนใจอย่างเหลือเชื่อโดยเฉพาะอย่างยิ่งในด้านทอพอโลยี สิ่งที่ฉันพยายามที่จะคิดออกคือถ้าใครมีหรือกำลังทำงานกับปลั๊กอินใด ๆ ที่เปลี่ยนคุณสมบัติเหล่านี้เป็นตัวควบคุมพื้นเมืองภายใน qgis?
22 postgis  qgis  topology 

4
สร้างแวดวงใน PostGIS หรือไม่
ฉันใช้ PostGIS 1.5.2 กับรูปทรงเรขาคณิตใน SRID: 900913 ฉันต้องการสร้างแวดวงโดยใช้รายการคะแนนเป็นจุดศูนย์กลางด้วยรัศมี 600 กิโลเมตร ฉันใช้คำค้นหานี้: INSERT INTO circles (geom) ( SELECT ST_Buffer(point, 600000, 'quad_segs=8') FROM points ); แต่วงกลมที่สร้างขึ้นมีรัศมีไม่ 600 กิโลเมตร (รัศมีอยู่ใกล้กับความยาวนี้ แต่ไม่แน่นอน) มีวิธีอื่นในการสร้างแวดวงใน PostGIS หรือไม่ หมายเหตุ: ข้อมูลที่แสดงนั้นมาจากสเปน การฉายภาพที่ถูกต้องคือ 4326 แต่ลูกค้าใช้ Google rasters ดังนั้นฉันจึงจัดเก็บข้อมูลไว้ใน 900913 เพื่อหลีกเลี่ยงการถอดแบบและเพิ่มประสิทธิภาพ

3
กำลังมองหากลยุทธ์ทั่วไปสำหรับการสร้างโครงร่างใน PostGIS
ฉันมีชุดข้อมูลของการสร้างรอยเท้าเวกเตอร์จากชุดข้อมูลแบบแรสเตอร์ ชุดข้อมูลปัจจุบันเป็นเพียงการแสดงเวกเตอร์ของข้อมูลแรสเตอร์ ฉันต้องการชุดข้อมูลรูปหลายเหลี่ยมที่มีจุดยอดที่มุมของอาคารเท่านั้น ฉันพยายามใช้คำสั่งลดความซับซ้อนใน PostGIS ด้วยความสำเร็จที่ จำกัด มีวิธีที่ดีกว่า?

2
ฉันจะหาจุดในรูปหลายเหลี่ยมใน PostGIS ได้อย่างไร
ฉันจะหาจุดที่รับประกันได้ว่าอยู่ในรูปหลายเหลี่ยมที่กำหนดใน PostGIS ได้อย่างไร ฉันตระหนักถึงST_Centroidฟังก์ชั่น อย่างไรก็ตามเซนทรอยด์อาจไม่อยู่ในรูปหลายเหลี่ยมเสมอไปดูด้านล่าง: นอกจากนี้ฉันต้องการหลีกเลี่ยงการใช้จุดที่อยู่ในขอบเขตของรูปหลายเหลี่ยม แต่ต้องการให้มีจุดที่อยู่ภายในขอบเขต

7
ตัวเลือกสำหรับการแสดงผลเวกเตอร์ PostGIS ใน OpenLayers
ฉันใหม่กับการทำแผนที่เว็บดังนั้นคำถามนี้อาจผิดไปเล็กน้อย ฉันต้องการมีเว็บอินเตอร์เฟสที่ใช้งานง่ายมากโดยใช้ OpenLayers (หรือแม้แต่ Google Maps หากทำได้ง่ายกว่า) ซึ่งสามารถแสดงจำนวนจุดและตารางรูปหลายเหลี่ยมที่อยู่ใน PostGIS ฉันต้องการสิ่งนี้ให้เป็นเรื่องง่าย (และการบำรุงรักษาต่ำ) ที่เป็นไปได้: ฉันไม่ต้องการสร้างกระเบื้อง (เว้นแต่จะมีเหตุผลที่ดีมาก) หรือมีมิดเดิ้ลเลเยอร์ที่ซับซ้อนและซับซ้อน ประสิทธิภาพไม่จำเป็นต้องเป็นเรื่องมหัศจรรย์เนื่องจากเป็นเพื่อการใช้งานภายในและไม่จำเป็นต้องเพิ่มขนาดให้กับผู้ใช้ที่ใช้งานพร้อมกัน เลเยอร์ของเวกเตอร์เลเยอร์นั้นมีความสำคัญน้อยที่สุด เครื่องมือโอเพ่นซอร์สเป็นที่ต้องการอย่างมากเนื่องจากฉันแทบไม่มีงบประมาณสำหรับเรื่องนี้ อะไรคือแนวทางที่แนะนำสำหรับสิ่งนี้?

3
มีฟังก์ชันการละลายใน PostGIS นอกเหนือจาก st_union หรือไม่
ฉันกำลังมองหาฟังก์ชั่นที่จะละลายขอบเขตการแชร์ระหว่างคุณสมบัติรูปหลายเหลี่ยมในตาราง ST_UNION () เกือบจะทำในสิ่งที่ฉันกำลังมองหา แต่มันก็สร้างรูปหลายเหลี่ยมจากรูปหลายเหลี่ยมทั้งหมดในเลเยอร์โดยไม่คำนึงว่าพวกเขาแบ่งปันขอบเขตทั่วไปหรือไม่ ฉันควรละลายขอบเขตระหว่างรูปหลายเหลี่ยมที่สัมผัสกันเท่านั้น ฉันคิดว่าควรมีวิธีใช้ ST_TOUCHES () แต่แล้วความต้องการฟังก์ชั่นการละลายดูเหมือนเป็นเรื่องธรรมดาที่ฉันจะแปลกใจหากไม่มีฟังก์ชันในตัวที่จะทำให้บรรลุผล กรณีการใช้งานมีลักษณะดังนี้: ฉันดาวน์โหลดข้อมูล Corine Landcover สำหรับประเทศยุโรปขนาดใหญ่และฉันต้องการที่จะละลายขอบเขตระหว่างชนิดของป่าต่าง ๆ (ประมาณ 75,000 รูปหลายเหลี่ยมในหนึ่งตาราง) ฉันลอง ST_UNION แล้ว แต่มันทำให้ฉันมีข้อผิดพลาด "หน่วยความจำไม่เพียงพอ" (30,000 รูปหลายเหลี่ยมใช้งานได้): create table corine00 as select st_union(the_geom) as the_geom, sum(area_ha) as area_ha, substr(code_00,1,2) as code_00 from clc00_c31_forests group by substr(code_00,1,2) หมายเหตุ: รหัสฟอเรสต์ทั้งหมดเริ่มต้นด้วย '31' และฉันใช้ PostGIS …
22 postgis  dissolve 

1
กำลังจัดเก็บ GeoJSON FeatureCollection ไปยัง PostgreSQL ด้วย PostGIS
ฉันใหม่สำหรับ GeoJSON ฉันมีชุดคุณสมบัติ GeoJSON ตามที่แสดงและต้องการเก็บไว้ในตาราง postgres (testtable) ตาราง postgres ของฉันมีซีเรียลนัมเบอร์และคอลัมน์รูปทรงเรขาคณิต { "type": "FeatureCollection", "features": [ { "type": "Feature", "geometry": { "type": "Point", "coordinates": [ 2565453.1826721914, -3835048.659760314 ] } }, { "type": "Feature", "geometry": { "type": "LineString", "coordinates": [ [ 2727584.7219710173, -3713449.1942418693 ], [ 2732476.691781269, -3992291.473426192 ] ] } }, { …

1
PostGIS และ QGIS สามารถให้การแก้ไขผู้ใช้หลายคนที่เชื่อถือได้หรือไม่?
หลังจากพิจารณาตัวเลือกสองสามตัวฉันพยายามให้ความสามารถแก่ผู้ใช้ 15-20 QGIS 2.2 ของฉันในการดู / แก้ไขเลเยอร์ PostGIS พื้นฐานหนึ่งหรือสองจุดพร้อมกันหนึ่งอันที่ใหญ่ที่สุดมีเพียง 16,000 บันทึก ฉันได้ติดตั้ง PostgreSQL 9.1 / PostGIS 2.0 แล้วและการทดสอบขั้นพื้นฐานดูเหมือนว่าจะใช้ได้ แต่ก็ยังไม่ได้ปลดปล่อยให้ผู้คนทั่วไปเห็น โดยทั่วไปเราจะมีบรรณาธิการ 2-3 คนต่อครั้ง แต่อาจมีผู้ดู 15 คน การแก้ไขทั้งหมดจะอยู่ใน QGIS ผู้ชมจะเป็น QGIS และ ArcGIS (แต่เราไม่มี SDE) อย่างที่ฉันได้กล่าวไปแล้วไฟล์เหล่านี้เป็นเพียงไฟล์พื้นฐานและการแก้ไขจะเป็นการเพิ่ม / ลบจุดและการแก้ไขบางอย่างในตาราง ฉันไม่กังวลเกี่ยวกับการแก้ไขคุณสมบัติเดียวกันในเวลาเดียวกัน การรวมกันสามารถให้การแก้ไขผู้ใช้หลายคนที่เชื่อถือได้สำหรับไฟล์จุดพื้นฐานสองไฟล์?

1
ST_PointOnSurface คำนวณอย่างไร
คำถามนี้ถูกโยกย้ายจาก Stack Overflow เนื่องจากสามารถตอบได้ในการแลกเปลี่ยน Stack ของระบบข้อมูลทางภูมิศาสตร์ อพยพ 6 ปีที่แล้ว เอกสารประกอบของ PostGIS ระบุว่าST_PointOnSurface"POINT รับประกันว่าจะอยู่บนพื้นผิว" ดูเหมือนว่าฟังก์ชั่นนี้สามารถนำไปใช้งานได้เล็กน้อยเพื่อให้ได้ผลลัพธ์ที่ตรงตามเอกสาร แต่มียูทิลิตี้ในโลกแห่งความเป็นจริงเล็กน้อย แต่ฉันมั่นใจว่า PostGIS ให้การใช้งานที่ไม่น่ารำคาญ การแนะนำ PostGISนี้ให้การเปรียบเทียบที่ดีและตรงกันข้ามST_CentroidกับST_PointOnSurfaceและกล่าวว่า "[ST_PointOnSurface] มีราคาแพงกว่าการคำนวณเซนทรอยอย่างมาก" มีคำอธิบายที่ละเอียดยิ่งขึ้นเกี่ยวกับวิธีST_PointOnSurfaceคำนวณอย่างไร ฉันใช้ST_Centroidแต่พบกรณีขอบบางอย่างในข้อมูลของฉันที่เซนทรอยด์อยู่นอกเรขาคณิต ฉันเชื่อว่าST_PointOnSurfaceเป็นสิ่งที่ถูกต้อง แต่ชื่อฟังก์ชั่นและเอกสารออกจากห้องเพื่อความไม่แน่นอน นอกจากนี้ค่าใช้จ่ายในการคำนวณที่ST_PointOnSurfaceเกิดขึ้นแม้ว่าเซนทรอยด์จะอยู่ในรูปทรงเรขาคณิตแล้วหรือไม่?
21 geometry  postgis 

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.