ฉันมีตัว dxf ซึ่งสร้างขึ้นด้วยยูนิตในระดับที่ไม่ถูกต้อง ฉันจะยกระดับใน QGIS ได้อย่างไร? โปรดทราบว่ามันเปิดใน QGIS ในหน่วยแผนที่และตำแหน่งที่ไม่ถูกต้อง
ฉันมีตัว dxf ซึ่งสร้างขึ้นด้วยยูนิตในระดับที่ไม่ถูกต้อง ฉันจะยกระดับใน QGIS ได้อย่างไร? โปรดทราบว่ามันเปิดใน QGIS ในหน่วยแผนที่และตำแหน่งที่ไม่ถูกต้อง
คำตอบ:
คุณอ้างอิงตำแหน่งแรสเตอร์และเลียนแบบเวกเตอร์ :)
QGIS มีปลั๊กอิน affine (qgsAffine) ซึ่งคุณสามารถปรับขนาดเลเยอร์เวกเตอร์ คุณยังสามารถใช้การชดเชย x และ y กับจุดยอดทั้งหมดในเลเยอร์เวกเตอร์หากจำเป็น ฉันคิดว่าคุณอาจจะต้องแปลง DXF ของคุณเป็น shapefile เพื่อใช้งาน (คลิกขวาที่เลเยอร์ในแผงเลเยอร์และไปที่ 'บันทึกเป็น ... ') การนำการหมุนไปใช้กับเลเยอร์เวกเตอร์นั้นทำได้ยากขึ้นเล็กน้อย
หนึ่ง - การโต้ตอบมากขึ้น - ตัวเลือกที่เป็นปลั๊กอินเวกเตอร์ประมาท มัน
ทำเพื่อเวกเตอร์สิ่งที่ georefencers ทำเพื่อแรสเตอร์ คุณสมบัตินี้เป็นที่รู้จักกันว่า "แผ่นยาง"
มีแม้กระทั่งวิดีโอที่แสดงวิธีการทำงาน: https://vimeo.com/96142479
ฉันเชื่อว่าสิ่งนี้สามารถทำได้ใน QGIS
อย่างไรก็ตามฉันใช้ซอฟต์แวร์ CAD กับซอฟต์แวร์ gis ของฉันและจะทำสิ่งต่อไปนี้
ทั้งสองวิธีคุณต้องการข้อมูลพื้นฐานเกี่ยวกับ dxf
1. คุณควรรู้หน่วยของ dxf
2. คุณควรมีชุดของคะแนนที่ทราบใน dxf (อย่างน้อยที่สุด 2 คะแนน)
1a หากระบบพิกัดเดิม (หรือไม่ใช่ระบบ) สามารถระบุตัวได้คุณควรเปลี่ยนให้เป็นระบบที่รู้จักกันดี
(ถ้ารูปวาดถูกวาดโดยไม่มีระบบ แต่ระบบพื้นฐาน 0,0 ถือว่าพื้นที่บางประเภทเท่ากัน) ทั้ง alambert หรือ albers (ขึ้นอยู่กับพื้นที่ครอบคลุม [ขนาด])
2a ตรวจสอบให้แน่ใจว่ารายการทั้งหมดในรูปวาดแสดงขึ้น (ไม่ปิดเลเยอร์)
3a เลือกคุณสมบัติทั้งหมด
4a ย้ายฟีเจอร์ทั้งหมดจากจุดที่รู้จักไปยังจุดที่รู้จัก
5a หลังจากกำหนดขนาดดั้งเดิมให้ปรับขนาดวัตถุที่เลือกทั้งหมดอย่างชัดเจน
6a หมุนวัตถุที่เลือกทั้งหมดสังเกตุ
บันทึกและ / หรือส่งออกวัตถุที่เลือกด้วย CRS ที่รู้จัก
สิ่งนี้สามารถทำได้โดยใช้ GDAL 1.10 วิธีการนี้ใช้จุดควบคุมและไม่ค่อยมีการปรับขยาย แต่เต็มไปด้วยการอ้างอิงทางภูมิศาสตร์ (มีประโยชน์ถ้า dxf สูญเสียข้อมูลเชิงพื้นที่ทั้งหมด)
มันทำโดยทำการแปลงขั้นพื้นฐานใน ogr2ogr และจัดหาจุดควบคุมในแท็ก -gcp http://www.gdal.org/ogr2ogr.html
สำหรับคำแนะนำโปรดดู: ข้อมูลเวกเตอร์การอ้างอิงทางภูมิศาสตร์โดยใช้ QGIS
ฉันใช้ OpenJump หนึ่งครั้งเพราะฉันไม่สามารถทำคณิตศาสตร์ให้กับปลั๊กอิน QGIS ได้ อย่างไรก็ตามในที่สุดฉันก็พบว่ามันง่ายกว่าที่จะบันทึกเลเยอร์ SHP ของฉันด้วยการฉายที่รู้จักกันในชื่อ DXF เปิดใน QCAD (ฟรี) นำเข้า DXF ที่ต้องการการเชื่อมโยง เมื่อทุกอย่างอยู่ในสถานที่ฉันก็บันทึกมันเป็น DXF และนำเข้าสู่ QGIS อีกครั้งซึ่งการฉายนั้นถูกเก็บไว้และ DXF ของฉันก็ยังคงอยู่ในตำแหน่งและขนาดที่เหมาะสม ฉันสามารถบันทึก DXF เป็น SHP ได้
Plugin AnotherDXF2Shapeมีโมดูลการอ้างอิงทางภูมิศาสตร์ :
ด้วยการชดเชย X และ Y ทำให้สามารถทำการกระจัดของ DXF ได้ง่าย นี่เป็นประโยชน์ yB เมื่อพิกัดดั้งเดิมได้ถูกทำให้สั้นลงใน CAD / ระบบ
ไฟล์ World สำหรับชุดข้อมูล CAD
ไฟล์ world (.wld) เป็นไฟล์ข้อความที่มีจุดควบคุมที่อธิบายการแปลงพิกัด ไฟล์โลกสามารถใช้เพื่อขยายคุณสมบัติของแบบร่าง CAD เพื่อรวมข้อมูลการอ้างอิงทางภูมิศาสตร์ ข้อมูลจะถูกเก็บไว้เป็นค่าพิกัดที่กำหนดหนึ่งหรือสองเวกเตอร์แทนที่เรียกว่าลิงค์ ข้อมูลประกอบด้วยพิกัดสองหรือสี่คู่ที่จัดเป็นสองแถว แต่ละแถวจะกำหนดลิงก์การกระจัดโดยใช้ไวยากรณ์ต่อไปนี้: คู่แรกของพิกัดในแต่ละแถวสอดคล้องกับพิกัดต้นทางหรือที่เรียกว่าจากพิกัด ค่าเหล่านี้แสดงถึงตำแหน่ง x, y ของจุดควบคุมที่รู้จักในการเขียนแบบ CAD คู่ที่สองของพิกัดในแต่ละแถวสอดคล้องกับพิกัดปลายทางหรือที่เรียกว่าพิกัด ค่าเหล่านี้แสดงถึงตำแหน่งใหม่ในพื้นที่ทางภูมิศาสตร์ โดยทั่วไปแล้วจะเป็นจุดอ้างอิงในชั้นคุณลักษณะอื่น ที่มา: arcgis.com
หากการแปลงพิกัดถูกเปิดใช้งานและปลั๊กอินค้นหาไฟล์ WLD ที่สอดคล้องกันมันจะถูกรวมเข้าด้วยกันโดยอัตโนมัติและไฟล์ DXF จะถูกแปลงให้สอดคล้องกัน
การแปลงในจุดที่เหมือนกัน 1-4
เช่นเดียวกับชุดข้อมูล CAD การแปลงจะเกิดขึ้นผ่านจุดที่เหมือนกัน จำนวนพารามิเตอร์สำหรับการแปลงขึ้นอยู่กับจำนวนของคะแนนที่กำหนด หมายเหตุ: เอาต์พุตของส่วนที่เหลือสำหรับการกำหนดเกินนั้นไม่ได้อยู่ในขณะนี้
ฉันคิดว่าวิธีที่เร็วที่สุดคือการปรับเปลี่ยนไฟล์ DXF ของคุณ (ปรับขนาดและตำแหน่งในพิกัดที่ถูกต้อง) โดยใช้ซอฟต์แวร์ CAD แล้วโหลดใน QGIS
แน่นอนคุณสามารถย้ายฟีเจอร์ของคุณใน QGIS แต่ไม่สามารถปรับขนาดได้ หวังว่านี่จะช่วยได้