Voronoi Diagram บนรูปหลายเหลี่ยมที่กำหนดโดยใช้ QGIS


9

ฉันกำลังพยายามสร้าง Voronoi Diagram บนรูปหลายเหลี่ยมที่เฉพาะเจาะจง แต่มีปัญหาบางอย่างเมื่อจัดการกับขอบ นี่คือวิธีที่ฉันทำ:

  1. การเตรียมจุดสำหรับ Voronoi และรูปหลายเหลี่ยมสำหรับไดอะแกรม คะแนนสำหรับ Voronoi และพื้นที่ที่กำหนดเอง

  2. สร้าง Vornoi ป้อนคำอธิบายรูปภาพที่นี่

  3. ตัดขอบโดยใช้รูปหลายเหลี่ยม ป้อนคำอธิบายรูปภาพที่นี่

  4. รวมการตัด Voronoi และรูปหลายเหลี่ยมโดยใช้ยูเนี่ยน (ไม่แน่ใจว่านี่เป็นวิธีที่ดีที่สุด) และนี่คือปัญหาของฉันสำหรับขอบ ฉันต้องการ: 1) ลบเฟรมออกจากแผนที่ Voronoi ดั้งเดิม (ทำเครื่องหมายด้วยสีน้ำเงิน) 2) ขยายขอบไปที่ขอบของรูปหลายเหลี่ยมพื้นที่ (ทำเครื่องหมายด้วยสีแดง) เพื่อให้พื้นที่บริการที่ด้านขอบเป็นจริง ป้อนคำอธิบายรูปภาพที่นี่

ฉันจะทำสิ่งนี้ได้อย่างไร

คำตอบ:


10

คุณสามารถใช้เครื่องมือ v.voronoi จาก GRASS เพื่อสร้างรูปหลายเหลี่ยม voronoi และมันจะช่วยให้คุณสามารถระบุขอบเขตตามระดับชั้น:

ป้อนคำอธิบายรูปภาพที่นี่


สวัสดี @ahmadhanb ฉันจะใช้ฟังก์ชันนี้ใน QGIS ได้อย่างไร ฉันไม่เห็นมันในปลั๊กอิน ฉันต้องตั้งค่าอะไรก่อนที่จะใช้หรือไม่ ขอบคุณ!
Pete

1
@Pete คุณสามารถค้นหาเครื่องมือจากProcessing Toolbox -> GRASS -> Vector -> v.voronoi
ahmadhanb

มันสมบูรณ์แบบ!
Pete

4

คุณสามารถทำเช่นนี้เพียงโดยการปรับบัฟเฟอร์

นี่คือตัวอย่าง เลเยอร์รูปหลายเหลี่ยมและคะแนนต่อไปนี้โดยปกติจะส่งผลให้เกิดปัญหาที่คุณแสดงในคำถามของคุณ

รูปหลายเหลี่ยมที่ผิดปกติกับจุดสุ่ม

  1. เมื่อเรียกใช้เครื่องมือรูปหลายเหลี่ยม Voronoiเพิ่มbuffer regionเปอร์เซ็นต์ จำนวนที่แน่นอนจะแตกต่างกันไป แต่เนื่องจากเรากำลังตัดผลมันจะไม่เจ็บเกินกว่า ในตัวอย่างของฉันฉันใช้บัฟเฟอร์100%เพื่อเพิ่มขอบเขตเป็นสองเท่า

นี่คือผลลัพธ์ บัฟเฟอร์ 100% ของฉันขยายได้ดีกว่าภาพนี้จริง ๆ

รูปหลายเหลี่ยม voronoi วางซ้อนบนเลเยอร์อินพุต

  1. คลิปรูปหลายเหลี่ยม Voronoi โดยชั้นรูปหลายเหลี่ยมดั้งเดิม

รูปหลายเหลี่ยมที่ถูกตัด voronoi

และคุณมีมัน!


0

เพื่อแสดงวิธีการที่หลากหลายในการแก้ปัญหาของคุณด้วยความช่วยเหลือของ QGIS ฉันจะให้วิธีอื่น: ข้อมูลเริ่มต้นจะถูกนำเสนอในภาพหน้าจอด้านล่าง ป้อนคำอธิบายรูปภาพที่นี่

1) เนื่องจากรูปร่างของคุณมีรูปร่างที่ซับซ้อนให้รันบัฟเฟอร์“ เวกเตอร์> การประมวลผลทางภูมิศาสตร์> บัฟเฟอร์บัฟเฟอร์” ลงบนมันและแยกจุด“ เวกเตอร์> การประมวลผลทางเรขาคณิต> จุดต่อออก” ดูรูปด้านล่าง ป้อนคำอธิบายรูปภาพที่นี่

2) คัดลอกคะแนนจากเลเยอร์ต้นทาง“ ดินสอ> แก้ไข> คัดลอกวัตถุ” ไปยังจุดบัฟเฟอร์และดำเนินการกับรูปหลายเหลี่ยม Voronoi“ เวกเตอร์> การประมวลผลเชิงเรขาคณิต> Voronoi รูปหลายเหลี่ยม ... ” ดูรูปด้านล่าง ป้อนคำอธิบายรูปภาพที่นี่

3) ตัดรูปหลายเหลี่ยมด้วยรูปร่างดั้งเดิมของคุณโดยใช้ "Vector> Geoprocessing> Trimming" และดูผลลัพธ์ ... ป้อนคำอธิบายรูปภาพที่นี่

ฉันขอให้คุณประสบความสำเร็จ ...

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