คำตอบ:
คุณสามารถลองวางทับเส้นชั้นความสูงของคุณด้วยตารางความชันและแสดงเฉพาะเส้นชั้นความสูงขึ้นอยู่กับค่าเฉลี่ยของความลาดชันด้านล่างเส้นชั้นความสูง
เท่าที่ฉันรู้ไม่มีวิธีแก้ไขอัตโนมัติใน QGIS สำหรับปัญหานี้ อย่างไรก็ตามควรเป็นไปได้ที่จะใช้ตัวแสดงผลแบบอิงกฏเพื่อระบุรูปทรงที่จะลงจุดและควรปล่อยออก
ถ้าฉันเข้าใจปัญหาอย่างถูกต้องคุณกำลังทำงานกับ Shapefile ที่มีรูปทรงทั้งหมดที่สร้างไว้แล้ว คุณควรมีตารางแอตทริบิวต์ที่มีค่า contour เป็นหนึ่งในฟิลด์ - ตัวอย่างเช่น 'contour':
ID contour
1 1000
2 1010
3 1020
4 1030
ใน QGIS คุณสามารถทำสองสิ่ง หนึ่งคือการสร้างสำเนาของ Shapefile แล้วลบรูปทรงที่คุณไม่ต้องการ:
contour LIKE '%00' OR contour LIKE '%20' OR contour LIKE '%40' OR contour LIKE '%60' OR contour LIKE '%80'
(ฟังก์ชัน 'จับคู่' นี้ไม่สวย แต่ QGIS ขาดฟังก์ชั่นคณิตศาสตร์แบบโมดูโลที่จะทำให้ดีกว่านี้ - ฉันคิดว่า)ตัวเลือกที่สองคือการไม่แสดงเค้าโครงที่คุณไม่ต้องการให้แสดง นี่มันดูหรูหราไปหน่อย
contour LIKE '%00' OR contour LIKE '%20' OR contour LIKE '%40' OR contour LIKE '%60' OR contour LIKE '%80'
ณ จุดนี้การแสดงรูปทรงเท่านั้นจะเป็นรูปแบบที่ตรงกับนิพจน์
สิ่งที่ยอดเยี่ยมเกี่ยวกับตัวเลือกที่สองคือคุณสามารถสร้างกฎสำหรับเครื่องชั่งที่แตกต่างกัน- คุณสามารถมีกฎหนึ่งข้อเมื่อคุณซูมออกในระดับที่แสดงซึ่งอาจเป็นเพียงรูปทรง 100 เมตร ('% 00' เท่านั้นใน expression) จากนั้นกฎอีกข้อหนึ่งที่แสดงรูปทรง 20 เมตรเมื่อซูมเข้าไปอีกเป็นต้น
หากคุณกำลังมองหาวิธีในการสร้างรูปทรง 25 เมตรใหม่ระหว่าง 100 เมตรรูปทรงคุณอาจจะดีกว่าที่จะสร้างไฟล์รูปร่างใหม่จากแบบจำลองระดับความสูงแบบดิจิทัล ฉันไม่แน่ใจว่ามีวิธีการใด ๆ ที่น่าเชื่อถือและถูกต้องแก้ไขรูปทรง 25 เมตรใหม่ระหว่างรูปทรงอื่นหรือไม่
นี่คือวิธีที่ฉันทำเมื่อฉันมีรูปร่าง shape (หรือฐานข้อมูล Spatialite) ที่มี contours ในแนวดิ่งที่ระยะ 10 เมตรและฉันต้องการพล็อตเฉพาะ contours ที่เกิดขึ้นที่ช่วง (50 เมตร)
โหลด shapefile และสอบถามโดยใช้ส่วนของ SQL นี้: '(ELEV% 50) = 0' โดยที่ 'ELEV' เป็นแอตทริบิวต์ที่มีข้อมูลการยก