กำลังย้ายเวกเตอร์ไปยังพิกัดที่ระบุใน QGIS?


คำตอบ:


24

แน่นอนว่าสามารถ เช่นเดียวกับ alexgleith กล่าวว่าคุณสามารถใช้ปลั๊กอิน qgsaffine (จากตัวติดตั้งปลั๊กอิน)

ด้านบนของบรรทัดแรกอยู่ที่ 0,0 และด้านบนของบรรทัดที่สองคือ 5,5 เมื่อถึงจุดเริ่มต้นคะแนนจะอยู่ที่ 0 บน X ป้อนคำอธิบายรูปภาพที่นี่

การใช้ปลั๊กอิน Affine เราสามารถเพิ่ม 5 ลงในพิกัด X ทั้งหมดได้:

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

หลังจากนั้นพวกเขาทั้งหมดในบรรทัดที่สองที่ X 5, Y 5:ป้อนคำอธิบายรูปภาพที่นี่


ฉันมีความสุขที่จะลอง แต่แรกอินเตอร์เฟสของปลั๊กอินดูแตกต่างกันมากในขณะนี้และที่สองมีข้อ จำกัด บางอย่างเพราะไม่มีวิธีที่ฉันสามารถใส่มี 7500000 เป็นค่ามาตรฐานเมื่อใช้ตาราง GDA94 หรือตาราง UTM ...
Miro

อืมฉันย้ายมันด้วยตนเองก่อนด้วยเครื่องมือย้ายตามที่กล่าวไว้ในคำตอบที่สอง
Miro

"ด้านบนของบรรทัดแรกอยู่ที่ 0,0 และด้านบนของบรรทัดที่สองอยู่ที่ 5,5" มันจะเป็นอย่างไรถ้าเส้นทั้งสองอยู่ในแนวตั้ง?
Rodrigo

7

หากคุณต้องการย้ายด้วยตนเองเพียงแค่เริ่มแก้ไขเลือกคุณสมบัติที่คุณต้องการย้ายจากนั้นเลือกเครื่องมือย้ายแล้วเลื่อน

ในการเคลื่อนย้ายพวกมันด้วย x, y offset คุณอาจสามารถใช้ python plugin "qgsaffine"

ฉันไม่ทันสมัยกับการใช้คอนโซล python แต่อาจมีวิธีแก้ไขด้วยเช่นกัน


น่าเสียดายที่การใช้หน่วยความจำ QGIS ต้องผ่านหลังคาและเกิดขัดข้องเว้นแต่ว่าคุณจะย้ายวัตถุธรรมดาเพียงไม่กี่ชิ้นเท่านั้น
ดาเมียน

6

ปลั๊กอินในคำตอบที่ยอมรับไม่สามารถใช้ได้อีกต่อไป การแปลง Affine นั้นมีให้ใช้และมีประโยชน์มาก

ด้วยปลั๊กอินนี้คุณสามารถสร้างสูตร ในภาพหน้าจอฉันเลื่อนเซลล์ทั้งหมดด้วย 17.396 (เมตร) ไปทางทิศเหนือ

สกรีนช็อตของหน้าจอหลักของปลั๊กอิน


x 'และ y' หมายถึงอะไร ทำไมค่าแรกคือ 1 และ 0 ที่สองเป็นค่าเริ่มต้น ทำไมถึงมี x + และ y + สองตัว ทำไมค่าเริ่มต้นที่สองของ x + คือ 1 โดยที่เหลือ 0 ทั้งหมด?
Rodrigo

1
x'และy' วิธีการได้มาxและyจากชั้นเวกเตอร์เดิม คุณต้องอ่านแบบนี้: derived x= (1.0 * original x) + (0.0 * original y) + 0.0หมายความว่าไม่มีการเปลี่ยนแปลงในทิศทาง x ดังนั้น 1.0 คูณ x ฉันต้องการเลื่อนเซลล์ทั้งหมดขึ้น (ไปทางทิศเหนือ) ประมาณ 17.396 เมตร ดังนั้นฉันเพิ่ม 17.396 ไปยัง (1 * y) เท่านั้น เมื่อคุณไม่ต้องการเปลี่ยนแปลงเลยคุณเพียงแค่ใช้: x' = (1 * x) + (0 * y) + 0และy' = (0 * x) + (1 * y) + 0
Gert

ขอขอบคุณ! ตอนนี้ฉันเข้าใจแล้ว.
Rodrigo

3

ฉันพบปลั๊กอิน"การแก้ไขจุดสุดยอดเชิงตัวเลข"มีประโยชน์มากสำหรับการระบุพิกัดใหม่สำหรับจุด

บนเลเยอร์ที่แก้ไขได้ให้ใช้เครื่องมือเพื่อเลือกจุดจากนั้นคุณจะได้รับแจ้งให้ป้อนพิกัดใหม่


1

มีปลั๊กอินที่เรียกว่าเป็นmoveในพื้นที่เก็บข้อมูลรหัส

มันเคลื่อนที่รูปร่างจากจุด A และ B และทำสิ่งนั้นโดยไม่มีภาวะแทรกซ้อน

มันย้ายวัตถุที่เลือกทั้งหมดจากจุดหนึ่งไปอีกจุดหนึ่งด้วยสแน็ป


0

ใน QGIS 3.x ไม่จำเป็นต้องใช้ปลั๊กอินเพื่อย้ายรูปร่างเวกเตอร์อีกต่อไปเนื่องจากมีรูทีนที่เรียกว่า "แปล" ใน Toolbox -> Vector Geometry คุณเพียงแค่ใส่ระยะทางออฟเซ็ตสำหรับแกน x และ y และเรียกใช้หรือ - ตามที่กล่าวไว้ข้างต้นหากคุณต้องการวางตำแหน่งด้วยตนเองเริ่มแก้ไขเลเยอร์เลือกเอนทิตีทั้งหมดแล้วย้ายพวกมันด้วยเครื่องมือ "ย้ายคุณสมบัติ"

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

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