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

(1) เรขาคณิตนามธรรม (2) การจัดเก็บข้อมูลทางภูมิศาสตร์ในพิกัดที่ฉาย (3) คำ ESRI ทั่วไปสำหรับคุณสมบัติของเวกเตอร์ คลาสสำหรับวัตถุ "เรขาคณิต"

6
แปลง shapefile เป็น CSV รวมถึงคุณลักษณะและรูปทรงเรขาคณิตหรือไม่
ฉันมี shapefile พร้อมรายการ 60k + ซึ่งทั้งหมดเป็นรูปหลายเหลี่ยมที่มีแอตทริบิวต์ที่สอดคล้องกัน (ยอดรวมเอเคอร์ชื่อเจ้าของที่ดินหมายเลขประจำตัวผู้เสียภาษี # ฯลฯ ) สิ่งที่ฉันต้องการในที่สุดคือไฟล์ CSV ที่มีแอตทริบิวต์เหล่านี้ทั้งหมดและรูปทรงเรขาคณิตที่สอดคล้องกัน (ในรูปแบบ xyz ที่รองรับ KML นั่นคือไม่ใช่รูปแบบ WKT) ฉันรู้ว่าฉันสามารถเปิดไฟล์. dbf ใน Excel และรับคุณลักษณะได้ ฉันยังรู้ว่าฉันสามารถเปิด shapefile ใน QGIS และคัดลอกข้อมูลไปยัง Excel ซึ่งทำให้ฉันมีคุณสมบัติและรูปทรงเรขาคณิต WKT มีวิธีง่าย ๆ ในการแปลง shapefile เป็น CSV (openable ใน Excel) ด้วยแอตทริบิวต์และเรขาคณิตที่เป็นมิตรของ Google Earth หรือไม่

3
ความแม่นยำของ SELECT DISTINCT บนคอลัมน์เรขาคณิตของ PostGIS คืออะไร
ฉันสงสัยว่าความแม่นยำของSELECT DISTINCTผู้ปฏิบัติงานบนเรขาคณิตของ PostGIS เป็นอย่างไร ในระบบของฉันเคียวรีต่อไปนี้ให้ฉันนับ 5 ซึ่งหมายความว่าจุดแทรกจะถือว่าเท่ากันถ้าแตกต่างกันน้อยกว่า 1e-5 และฉันไม่แน่ใจว่าเป็นคุณลักษณะของ PostGIS ปัญหาการติดตั้งของฉัน หรือบั๊ก ไม่มีใครรู้ว่านั่นเป็นพฤติกรรมที่คาดหวังหรือไม่? CREATE TEMP TABLE test (geom geometry); INSERT INTO test VALUES (St_GeomFromText('POINT (0.1 0.1)')), (St_GeomFromText('POINT (0.001 0.001)')), (St_GeomFromText('POINT (0.0001 0.0001)')), (St_GeomFromText('POINT (0.00001 0.00001)')), (St_GeomFromText('POINT (0.000001 0.000001)')), (St_GeomFromText('POINT (0.0000001 0.0000001)')), (St_GeomFromText('POINT (0.00000001 0.00000001)')), (St_GeomFromText('POINT (0.000000001 0.000000001)')); SELECT COUNT(*) FROM …

2
วิธีการคำนวณมุมที่สองบรรทัดตัดกันใน PostGIS
ฉันต้องการคำนวณมุมระหว่างสองบรรทัดที่พวกเขาตัดกันใน PostGIS จุดเริ่มต้นสำหรับการคำนวณมุมใน PostGIS นั้นน่าจะเป็นST_Azimuth - แต่นั่นก็เป็นจุดที่ป้อนเข้า ความคิดแรกของฉันคือการหาจุดสิ้นสุดของเส้นตัดกันและทำการคำนวณแบบอะซิมุ ธ นั่นไม่ดีพอเพราะคุณสมบัติส่วนใหญ่ของเส้นไม่ตรงและฉันสนใจในมุมที่จุดตัด ดังนั้นสิ่งที่ฉันเกิดขึ้นคือการดำเนินการซ้อนกันที่ทำตามขั้นตอนต่อไปนี้: ระบุจุดแยกทั้งหมดระหว่างตารางคุณลักษณะสองบรรทัด สร้างบัฟเฟอร์ขนาดเล็กมากรอบ ๆ จุดตัด ระบุจุดที่คุณสมบัติของเส้นตัดกันด้านนอกของบัฟเฟอร์ (ใช้จุดแรกถ้ามีมากกว่าหนึ่ง - ฉันสนใจเฉพาะจริงๆว่ามุมนั้นใกล้กับ 0, 90 หรือ 180 องศา) คำนวณ ST_Azimuth สำหรับสองจุดนั้น SQL แบบเต็มมีความยาวในการโพสต์ที่นี่ แต่ฉัน gisted ที่นี่ถ้าคุณสนใจ (โดยวิธีการมีวิธีที่ดีกว่าที่จะดำเนินการมากกว่าเขตข้อมูลทั้งหมดจะลงงบกับ?) ผลลัพธ์ไม่ถูกต้องดังนั้นฉันจึงทำสิ่งที่ผิดอย่างชัดเจน: แก้ไขฉันเพิ่มการคำนวณใน EPSG ใหม่: 3785 และผลลัพธ์จะแตกต่างกันเล็กน้อย แต่ก็ไม่ถูกต้อง: คำถามของฉันอยู่ที่ข้อบกพร่องในกระบวนการนี้ ฉันเข้าใจผิดว่า ST_Azimuth ทำอะไรได้บ้าง มีปัญหา CRS หรือไม่ มีอะไรอีกบ้างไหม? หรืออาจจะมีวิธีที่ง่ายกว่านี้มากในการทำเช่นนี้?
19 postgis  geometry 

2
กำลังหาบรรทัดกลางอุโมงค์?
ฉันมีไฟล์แผนที่บางไฟล์ที่ประกอบด้วย 'polylines' (แต่ละบรรทัดเป็นเพียงรายการของจุดยอด) ที่แสดงถึงอุโมงค์และฉันต้องการลองค้นหาอุโมงค์ 'เส้นกลาง' (แสดงโดยประมาณเป็นสีแดงด้านล่าง) ฉันประสบความสำเร็จในอดีตโดยใช้Delaunay triangulationแต่ฉันต้องการหลีกเลี่ยงวิธีการนี้เนื่องจากไม่ได้ (โดยทั่วไป) ทำให้สามารถแก้ไขข้อมูลแผนที่ของฉันได้ง่าย / บ่อยครั้ง มีความคิดเห็นเกี่ยวกับวิธีที่ฉันอาจทำสิ่งนี้ได้อย่างไร ฉันทำงานใน C ++ ที่ค่อนข้างดิบ

5
เปรียบเทียบรูปทรงเรขาคณิตสองแบบใน ArcPy หรือไม่
ฉันพยายามเปรียบเทียบสองฟีเจอร์แยกต่างหากเพื่อระบุความแตกต่างระหว่างคลาสเหล่านั้น (เรียงลำดับของฟังก์ชั่น diff) เวิร์กโฟลว์พื้นฐานของฉัน: ฉันแยกรูปทรงเรขาคณิตโดยใช้SearchCursor บันทึกรูปทรงเรขาคณิตของสองฟีเจอร์คลาสเป็น GeoJSON โดยใช้การแก้ไข__geo_interface__(ได้มาจากvalveLondon return {'type': 'Polygon', 'coordinates': [[((pt.X, pt.Y) if pt else None) for pt in part] for part in self]} ) นี่คือเพื่อหลีกเลี่ยงวัตถุเรขาคณิตที่ใช้ร่วมกันที่ ESRI ใช้กับเคอร์เซอร์และไม่สามารถทำสำเนาลึก ๆ (การสนทนาบางอย่างที่นี่ใน gis.stackexchange พูดถึงมัน) ตรวจสอบรูปทรงเรขาคณิตของคลาสฟีเจอร์สองคลาสตามตัวระบุเฉพาะ ตัวอย่างเช่นเปรียบเทียบเรขาคณิต FC1 OID1 กับเรขาคณิต FC2 OID1 เพื่อให้ได้รูปทรงเรขาคณิตเป็น ESRI ตัวอย่างวัตถุโทรarcpy.AsShape()(แก้ไขการอ่านรูปหลายเหลี่ยมที่มีรู (ดูจุดที่ 2 ข้างต้น) กับreturn cls(Array([map(lambda p: …
18 arcpy  geometry 

1
Postgis - การแปลงชนิดข้อมูล 'geometry_dump' เป็นประเภท 'geometry'
ฉันกำลังทำงานกับชุดข้อมูลของขอบเขตคุณสมบัติที่มี ST_Union () ทำงานอยู่ดังนั้นรูปหลายเหลี่ยมทั้งหมดจะปรากฏเป็นรูปหลายเหลี่ยมหลายเหลี่ยมในหนึ่งแถวของตาราง ฉันต้องการแยกสิ่งเหล่านี้ออกเพื่อให้ได้แถว / รูปหลายเหลี่ยมแยกสำหรับแต่ละรูปร่าง ฉันได้ลองใช้งาน ST_Dump () กับสิ่งนี้และดูเหมือนว่าจะแยกโพลีกอนออกจากชุดข้อมูล แต่ฉันไม่สามารถดูได้อีกใน GIS (ฉันกำลังใช้ QGIS) ประเภทข้อมูลสำหรับคอลัมน์นี้บอกว่ามันเป็น 'geometry_dump' และฉันคิดว่านี่เป็นเหตุผลที่ฉันไม่สามารถมองเห็นได้ เมื่อฉันเข้าถึงฐานข้อมูล Postgres จาก QGIS ตารางใหม่นี้จะแสดงรายการอยู่ใต้หัวเรื่องของชุดข้อมูลที่ไม่มีรูปเรขาคณิต ไม่มีใครรู้ว่ามีบางสิ่งที่ฉันสามารถทำได้เพื่อแปลง 'geometry_dump' เป็น 'geometry' หรือไม่?

6
การแปลงระหว่าง Esri Geometry และ WKT โดยใช้ ArcObjects?
ดูเหมือนว่าไม่มีวิธีการแปลงเรขาคณิต ArcObjects เป็นตัวแทนข้อความที่รู้จักกันดี (และในทางกลับกัน) ใน ArcGIS ArcObjects API สิ่งเดียวที่ฉันสามารถค้นหาได้คือการแปลงเป็น WKB (อินเทอร์เฟซ IWkb) มีวิธีที่จะทำการแปลงระหว่างวัตถุรูปทรงเรขาคณิตกับ WKT หรือฉันต้องใช้มันเอง? ฉันตั้งเป้าหมายในการติดตั้ง. NET เป็นหลักโดยไม่ต้องพึ่งพาภายนอกมากนัก

2
คัดลอกรูปทรงเรขาคณิตจากคุณลักษณะหนึ่งไปยังอีกคุณลักษณะหนึ่งโดยไม่มีแอตทริบิวต์หรือไม่
ด้วย QGIS มันง่ายที่จะเพิ่มชิ้นส่วนใหม่ให้กับคุณสมบัติ / รูปทรงเรขาคณิตที่มีอยู่ แต่ฉันไม่เห็นวิธีการคัดลอก / วางส่วนนี้จากคุณสมบัติ / รูปทรงเรขาคณิตที่มีอยู่อื่น เป็นไปได้ไหม?
17 qgis  geometry  copy 

3
ฉันจะรับ SRID จากฟิลด์เรขาคณิตได้อย่างไร
ฟังก์ชั่นสำหรับรับ SRID จากฟิลด์เรขาคณิตคืออะไร ฉันได้แทรก shapefile ลงในตาราง SQL Server ด้วยฟิลด์ Geometry ที่กำหนดไว้ ฉันรู้ว่าการฉายภาพของ shapefile คือ Swreff99_1800 (EPSG: 3011) ตอนนี้คำถามของฉันคือฉันจะรับ SRID นี้ได้อย่างไร: 3011 โดยใช้วิธี OGC ของฟิลด์เรขาคณิต

3
ลบคุณลักษณะที่ซ้ำกันด้วยเรขาคณิตเดียวกันใน ArcMap หรือไม่
เป็นไปได้หรือไม่ที่จะระบุรูปทรงเรขาคณิตแต่ละอันในเลเยอร์คุณลักษณะโดยเฉพาะ? โดยพื้นฐานแล้วฉันมีเลเยอร์คุณลักษณะรูปหลายเหลี่ยมที่มีข้อมูลหลายแถวที่แสดงด้วยรูปทรงเรขาคณิตเดียวกัน ฉันต้องการ 1 แถวสำหรับรูปทรงเรขาคณิตที่ไม่ซ้ำกัน ดังนั้นฉันกำลังมองหาวิธีการนอกกรอบเพื่อรวมคุณลักษณะตามรูปร่างของเรขาคณิต ฉันมาจากโลก Postgres และสามารถแก้ไขปัญหานี้ได้ที่นั่น แต่ฉันไม่รู้ว่าจะทำอย่างไร (หรือถ้าเป็นไปได้) เพื่อทำสิ่งนี้โดยไม่ต้องใช้โปรแกรมโดยใช้เครื่องมือ ESRI

3
ส่งออกเฉพาะบางคอลัมน์ไปยังไฟล์ CSV ใน ArcGIS for Desktop หรือไม่
ฉันได้เขียนสคริปต์ไพ ธ อนโดยใช้ arcpy ซึ่งแสดงคลาสของรูปหลายเหลี่ยมในฐานข้อมูลไฟล์ ฉันได้เพิ่มฟังก์ชั่นเพื่อส่งออกคุณสมบัติไปยังไฟล์ CSV แยกต่างหาก ฉันใช้รหัสที่ฉันพบในโพสต์นี้ซึ่งทำงานได้อย่างสมบูรณ์ อย่างไรก็ตามรหัสนั้นจะส่งออกทุกคอลัมน์ในคลาสคุณลักษณะ ฉันเพียงต้องการส่งออกเขตข้อมูลที่ไม่ได้มีรายชื่อดังต่อไปนี้: OBJECTID, หรือShapeShape_Length ไฟล์ CSV ของฉันสร้างสำเร็จและไม่ถูกต้องรวมถึงOBJECTIDหรือShape_Lengthฟิลด์ อย่างไรก็ตามShapeฟิลด์นี้เขียนลงไฟล์ ค่าตัวอย่างที่เขียนลงในฟิลด์นั้นคือ: <geoprocessing describe geometry object object at 0x28CB90A0> ฉันได้เพิ่มบรรทัดเพื่อพิมพ์ชื่อฟิลด์ตามที่วนซ้ำและแปลกใจที่Shapeไม่ได้พิมพ์ออกมา เหมือนกับว่า ArcGIS ซ่อนหรือให้ชื่ออื่น รหัสสำหรับฟังก์ชั่นของฉันอยู่ด้านล่าง: def exportToTable(): """ Exports the final outputs to a CSV File. """ # Create path to CSV File (note the …

2
การแก้ไขช่องว่างและเรขาคณิตของรูปหลายเหลี่ยมที่ทับซ้อนกัน (พัสดุ)
ฉันเจอทรัพยากรที่เราพึ่งพาเกือบทุกวันที่ต้องการการซ่อมแซมอย่างมาก ไม่ใช่ผลิตภัณฑ์ของเราเองและโดยทั่วไปผู้ผลิตไม่สนใจที่จะแก้ไขปัญหา เรากำลังใช้ไฟล์รูปหลายเหลี่ยมซึ่งมีขอบเขตของพัสดุมากกว่า 2000 รายการ พัสดุไปรษณียากรเองไม่ได้เป็นพัสดุในความหมายทั่วไปของคำ แต่อย่างไรก็ตามมันอธิบายข้อมูลได้อย่างมีประสิทธิภาพ ไม่มี 'พัสดุ' จะทับซ้อนหรือสร้างช่องว่างระหว่างพัสดุ อย่างไรก็ตามคุณภาพของข้อมูลอยู่ในระดับต่ำมากและเกือบจะดูเหมือนว่าพัสดุถูกวาดด้วยมือโดยปิดการใช้งานการจัดเรียง! ดูภาพด้านล่าง: ในบางกรณีมันแย่กว่าในรูปถ่ายมากหรือช่องว่าง / ทับซ้อนกันมีขนาดเล็กจนไม่สามารถพิสูจน์ได้จนกว่าจะทำตามขั้นตอนเชิงพื้นที่ (เช่นทางแยก) เราจะแก้ไขปัญหาประเภทนี้อย่างไร? ฉันได้แนบไฟล์รูปร่างซึ่งแสดงถึงรูปหลายเหลี่ยม 8 รูปในภาพถ่าย รูปหลายเหลี่ยม 8 รูปเหล่านี้แสดงทั้งปัญหาช่องว่างและการซ้อนทับของฉัน กระบวนการนี้เป็นไปโดยอัตโนมัติเพื่อแก้ไขพัสดุของฉันมากกว่า 2000+ หรือไม่ http://temp-share.com/show/dPf3mpihW หมายเหตุ: ฉันได้สำรวจเครื่องมือ "แก้ไขเรขาคณิต" ใน ArcMap แต่สิ่งนี้แก้ไขรูปหลายเหลี่ยมที่ซ้อนกันเท่านั้น แม้ว่ารูปทรงเรขาคณิตที่ทับซ้อนกันนั้นเป็นปัญหาที่เลวร้ายกว่าของปัญหาทั้งสองฉันต้องการแก้ไขทั้งสองอย่างถ้าเป็นไปได้!

5
คำศัพท์: รูปหลายเหลี่ยมหรือพื้นที่?
เมื่อเขียนเกี่ยวกับเรขาคณิต GIS ฉันไม่แน่ใจว่าจะใช้คำว่า "รูปหลายเหลี่ยม" หรือ "พื้นที่" โดยเฉพาะอย่างยิ่งคำว่า "รูปหลายเหลี่ยม" แนะนำประเภทเรขาคณิตที่เฉพาะเจาะจงหรือไม่ ตัวอย่างเช่นเพื่อนร่วมงานแนะนำให้ฉันว่า "รูปหลายเหลี่ยม" ไม่ใช่คำที่เหมาะสมสำหรับคุณสมบัติโดนัท! แต่ถึงแม้ว่าจะเป็นเรื่องจริง มีข้อสรุปที่ชัดเจนในเรื่องนี้หรือไม่? นอกจากนี้คำใดที่แปลได้ดีกว่าในภาษาอื่นเช่นเยอรมันและฝรั่งเศส ฉันพยายามพิจารณาผู้ใช้ที่ไม่ใช่คนที่พูดภาษาอังกฤษ

2
ความหมายของรูปทรงเรขาคณิตที่ไม่ถูกต้องคืออะไร
ฉันได้นำเข้าข้อมูลบางส่วนในฐานข้อมูล Postgis และรูปทรงเรขาคณิตบางส่วนมีการรายงานที่ไม่ถูกต้อง (ST_IsValidReason รายงานการแยกตัวเองหรือการแยกแหวนด้วยตนเอง) ดูเหมือนว่าข้อความค้นหาที่ฉันทำไม่ได้รับผลกระทบจากลักษณะที่ไม่ถูกต้องของรูปทรงเหล่านี้ (ฉันใช้ ST_Distance แบบสอบถามเท่านั้น) อะไรคือสิ่งที่แตกหักเมื่อรูปทรงเรขาคณิตไม่ถูกต้อง การแก้ไขรูปทรงเรขาคณิตเหล่านี้ "อัตโนมัติ" (บัฟเฟอร์ (geom, 0) หรือ ST_SimplifyPreserveTopology (geom, 0.0001)) เป็นตัวเลือกหรือไม่?

2
วิธีการวาดรูปหลายเหลี่ยมจากคอนโซลหลาม?
ฉันได้เยี่ยมชมและเยี่ยมชมหน้าใหม่เกี่ยวกับการจัดการรูปทรงเรขาคณิตในตำราอาหาร PyQGIS: http://documentation.qgis.org/2.0/en/docs/pyqgis_developer_cookbook/geometry.htmlแต่ดูเหมือนว่าจะไม่เข้าใจวิธีการรับ รูปหลายเหลี่ยมที่วาดจากคอนโซล Python ใครช่วยได้บ้าง

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