เดสก์ท็อป ArcGIS คำนวณจุดภายในสำหรับ Feature to Point ได้อย่างไร


11

ให้ฉันสำรองข้อมูลและพูดว่าจากสิ่งที่ฉันเข้าใจมีสองวิธีทั่วไปในการคำนวณ centroid ของรูปหลายเหลี่ยมใน ArcGIS Desktop:

  1. การใช้คำนวณเรขาคณิตในฟิลด์ภายในตารางคุณลักษณะของคลาสคุณลักษณะ
  2. ใช้Data Management -> Features -> Feature to Pointจากกล่องเครื่องมือ

สิ่งเหล่านี้ทั้งคู่ให้ผลลัพธ์ที่เหมือนกัน - ศูนย์กลางเรขาคณิตของรูปหลายเหลี่ยม อย่างไรก็ตามไม่มีการรับประกันว่าจุดนั้นอยู่ในรูปหลายเหลี่ยม

เครื่องมือ Feature to Point มีตัวเลือกช่องทำเครื่องหมายด้านในซึ่งเป็นไปตามเอกสารประกอบ:

ใช้ตำแหน่งที่มีคุณสมบัติอินพุตเป็นตำแหน่งจุดส่งออก

สิ่งที่ฉันอยากรู้คือจุดนี้คำนวณโดย ArcGIS Desktop อย่างไรและอะไรคือความหมาย "เชิงทฤษฎี" ถ้ามันสมเหตุสมผล


2
ด้วยความคลุมเครือทั่วไปของเอกสารของ ESRI คุณอาจต้องทำวิศวกรรมย้อนกลับขั้นตอนโดยการทดสอบ เมื่อฉันทำสิ่งนี้ด้วย AV 3.x 15 ปีที่ผ่านมาอัลกอริทึมคือ (1) ค้นหาเรขาคณิต centroid แล้ว (2) ย้ายในแนวนอนไปยังจุดที่ใกล้ที่สุดภายในรูปหลายเหลี่ยม
whuber

@whuber - ในกรณีนี้จุดภายในอาจแตกต่างกันแม้ว่าเซนทรอยด์จะอยู่ในรูปหลายเหลี่ยมดังนั้นนั่นทำให้ฉันคิดว่ามันเป็นการคำนวณที่แตกต่างอย่างสิ้นเชิง
mindless.panda

3
โพสต์ฟอรัมนี้ในเว็บไซต์ของ ESRIนั้นน่าสนใจและดูเหมือนจะระบุว่าเป็นกล่องดำ
mindless.panda

ใช้ python ใน 9.3.1 ฉันเปรียบเทียบวิธีที่เป็นไปได้ในการสร้าง 'centroid' สามารถดูได้ที่นี่ ! ในฟอรัม ESRI
SaultDon

@mindless ในอัลกอริทึมเก่าถ้าเซนทรอยด์อยู่ในรูปหลายเหลี่ยมแน่นอนว่ามันไม่ได้ถูกย้าย: มันเกิดขึ้นพร้อมกับจุดที่ใกล้ที่สุดในรูปหลายเหลี่ยม อย่างไรก็ตามโพสต์ฟอรั่มที่คุณพบวาทกรรมปัญหานี้ moot: ESRI มีการเปลี่ยนแปลงอัลกอริทึม ฉันไม่คิดว่ามันจะ "แตกต่างอย่างสิ้นเชิง" มันอาจเป็นการปรับแต่งของรุ่นเก่า มันไม่ง่ายเลยที่จะทำวิศวกรรมย้อนกลับ
whuber

คำตอบ:


4

อัลกอริทึมเป็นกรรมสิทธิ์ แต่มีแนวคิดพื้นฐานสองประการที่นี่ เซนทรอยด์ใช้จุดศูนย์กลางของอัลกอริธึมแรงโน้มถ่วง (มีหลายวิธีในการคำนวณ) ช่องทำเครื่องหมาย "ข้างใน" คำนวณเซนทรอยด์ แต่จะย้ายจุดภายในถ้ามันอยู่ด้านนอกเนื่องจากเป็นที่ต้องการในบางกรณี

ในระดับ ArcObjects วิธีการเหล่านี้จะถูกกำหนดให้เป็นเซนทรอยด์และป้ายจุด ดูลิงค์ตัวอย่างของ Centroid


แม้ว่าสิ่งนี้จะไม่บอกเราว่าการคำนวณจุดภายในนั้นแจ้งให้เราทราบถึงความเหมือนของมันกับจุดฉลาก
mindless.panda

1

เราได้ใช้ ArcMap 10.3 คำนวณ (1) ฟีเจอร์ที่จะชี้พร้อมตัวเลือกภายใน (2) ฟีเจอร์ที่จะชี้โดยไม่มีตัวเลือกภายใน (3) เซนทรอยด์โดยคำนวณรูปทรงเรขาคณิต

คะแนนจาก (2) และ (3) ตำแหน่งแบ่งปันบางครั้งจุดเหล่านี้อยู่นอกรูปหลายเหลี่ยม (1) สร้างคะแนนภายในรูปหลายเหลี่ยมตามที่คาดไว้ส่วนใหญ่จะเหมือนกับคะแนนจาก (3) และ (2) บางครั้งคะแนนจาก (1) จะแตกต่างกันแม้ในกรณีที่จุดจาก (3) หรือ (2) อยู่ภายในรูปหลายเหลี่ยม (!): เราไม่สามารถตรวจพบความจำเป็นในการเปลี่ยนพื้นที่เพื่อรับจุดภายใน

คะแนนที่ถูกเลื่อนจาก (1) จะไม่ถูกเปลี่ยนในทิศทาง WE หรือ NS อย่างเคร่งครัด บางครั้งคะแนนที่เลื่อนโดยไม่จำเป็นนั้นอยู่ในตำแหน่งใหม่ซึ่งไม่ได้หมายถึงจุดของแรงโน้มถ่วงและไม่คาดคิด

งานทางวิทยาศาสตร์จะต้องทำซ้ำ เราไม่สามารถหาเอกสารสำหรับอัลกอริทึมหรืออธิบายการเปลี่ยนแปลงโดยเฉพาะอย่างยิ่งในกรณีที่ไม่จำเป็น ดังนั้นเซนทรอยด์ของคุณสมบัติ ESRI จึงไม่สามารถใช้ได้

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