การสร้างบรรทัดผู้นำสำหรับป้ายกำกับที่ย้าย


18

ด้วยความช่วยเหลือมากมายจาก gis.stackexchange.com ฉันได้สร้างบรรทัดผู้นำสำหรับสัญลักษณ์จุด เส้นจะขึ้นอยู่กับสัญลักษณ์เครื่องกำเนิดเรขาคณิต:

การตัดทอนเส้นรูปทรงเรขาคณิตโดยใช้ช่องโต้ตอบนิพจน์ใน QGIS?

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

ตอนนี้ฉันต้องการใช้บรรทัดผู้นำสำหรับป้ายกำกับที่ย้ายแล้ว มันสำคัญมากสำหรับฉันว่าเส้นเริ่มต้นที่กึ่งกลางของป้ายกำกับและสิ้นสุดที่พิกัดจุด (หรือกลับกัน)

-- Geometry generator:
make_line(
    make_point(label_x, label_y),
    $geometry)

อีกครั้งบรรทัดถูกครอบคลุมโดยเลเบล:

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

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

มีวิธีแก้ไขกล่องป้ายกำกับหรือย่อบรรทัดผู้นำหรือไม่ ฉันคิดว่านี่เป็นคำถามที่ค่อนข้างยุ่งยาก: /


ลองเปลี่ยนค่าออฟเซ็ต
GISKid

คำตอบ:


10

ประการแรกนี่คือทางออกที่เรียบร้อยจริงๆ! ฉันแก้ไขสิ่งนี้โดยใช้มุมมองฐานข้อมูล (overkill เล็กน้อย แต่ใช้งานได้)

ข้อเสนอแนะของฉันคือการใช้พื้นหลังและกรอกป้ายกำกับ

หรือดูที่นี่คุณอาจเชื่อมโยงโซลูชันบัฟเฟอร์และคลิปประเภทเข้าด้วยกัน

difference(make_line(make_point( "x" ,  "y" ), $geometry), buffer(make_point( "x" ,  "y" ),1))

ฉันเพิ่งทดสอบข้างต้นและใช้งานได้ (ฉันมีสาขาที่แตกต่างจากคุณ แต่มันพิสูจน์จุด) การใช้ตัวสร้างรูปทรงเรขาคณิตนั้นมีความยืดหยุ่นจริง ๆ ดังนั้นคุณอาจมีระยะห่างของบัฟเฟอร์ในฟิลด์ด้วยเช่นกันขึ้นอยู่กับสัญลักษณ์

ฉันไม่แน่ใจว่าเกิดอะไรขึ้นกับจุด 'สาม' แต่ฉันเดาว่าจุดยึดนั้นอยู่ทางซ้ายเล็กน้อย

แยกบรรทัดผู้นำป้ายกำกับออก


ฉันจะทำการทดสอบในอีกไม่กี่วันข้างหน้า แต่ฉันกลัวว่าพื้นหลังจะไม่ทำงานสำหรับโครงการที่ซับซ้อนโดยไม่ครอบคลุมบางชั้น
eclipsed_by_the_moon

คุณเห็นส่วนอื่นของคำตอบของฉันหรือไม่ ฉันพบบางสิ่งที่จะตัดบรรทัดผู้นำสำหรับคุณ @eclipsed_by_the_moon
Alex Leith

การตัดบรรทัดผู้นำสำหรับสัญลักษณ์ขนาดคงที่ทำงานได้ดี แต่ป้ายกำกับเป็นปัญหา ฉันจะพยายามคำนวณระยะห่างของบัฟเฟอร์แบบไดนามิกทันทีที่ฉันหาเวลา
eclipsed_by_the_moon

4

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

ดูที่: EasycustomLabaling

ดาวน์โหลดคลายซิปและวางละคร 'EasyCustomLabeling' ในรายการละครของปลั๊กอิน QGIS ของคุณ โหลด QGIS อีกครั้ง


ปลั๊กอินของคุณมีประโยชน์จริง ๆ แต่ฉันต้องการให้เครื่องสร้างเรขาคณิตสร้างบรรทัดที่เริ่มต้นที่กึ่งกลางของป้ายกำกับ
eclipsed_by_the_moon

ฉันเข้าใจ. สำหรับข้อมูลสามารถตั้งค่านี้ในฟิลด์ของเลเยอร์ต้นทางเมื่อใช้ปลั๊กอินนี้ (ฟิลด์ LblAlignV และ LblAlignH) - ความนับถือ
patricev

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