QGIS มีปลั๊กอินให้ทำงานกับโครงการการแมปWhat3Wordsหรือไม่?
QGIS มีปลั๊กอินให้ทำงานกับโครงการการแมปWhat3Wordsหรือไม่?
คำตอบ:
ใช้ wrapper w3w อย่างง่ายที่นี่:
https://github.com/what3words/w3w-python-wrapper
ฉันเขียนฟังก์ชันหลามแบบกำหนดเองเพื่อคืนค่า what3words ตามตำแหน่ง เมื่อติดเข้ากับเอ็นจิ้นนิพจน์คุณสามารถทำสิ่งต่างๆเช่นสร้างป้ายกำกับด้วย what3words:
สิ่งนี้ทำได้ด้วยนิพจน์ต่อไปนี้ในกล่องโต้ตอบเลเยอร์เลเบล:
concat("name",
' : ',
w3w( transform( $geometry, layer_property(@layer_id, 'crs'), 'EPSG:4326')))
และw3w
ฟังก์ชั่นของฉันมีลักษณะเช่นนี้ (พร้อมกับไฟล์จาก repo github ด้านบน)
@qgsfunction(args=1, group='Custom')
def w3w(value1, feature, parent):
(long, lat) = value1[0].asPoint()
w3w = what3words(apikey='YOURAPIKEYHERE')
res = w3w.getWords(lat=lat, lng=long)
return "%s" % ".".join(res['words'])
ทั้งหมดนี้ใช้เวลาประมาณยี่สิบนาที
แต่คำถามจริงคือคุณต้องการทำอะไรกับ what3 คำ
ไม่มีที่สิ้นสุดเพิ่งเขียนปลั๊กอินที่รวม What3Words ใน QGIS ปลั๊กอินช่วยให้คุณสามารถซูมไปยังที่อยู่ What3Words และคลิกบนแผนที่และแสดงที่อยู่ What3Words ของจุดที่คุณคลิก หมายเหตุมันไม่แสดงกริด What3Words 3mx3m รายละเอียดทั้งหมดสามารถดูได้ที่นี่:
http://boundlessgeo.com/2016/03/what3words-in-qgis-down-load-today/
ในขณะนี้จำเป็นต้องติดตั้งปลั๊กอินด้วยตนเอง นี่เป็นเรื่องง่ายจริง ๆ คุณเพียงดาวน์โหลดไฟล์จาก GitHub จากนั้นคัดลอกโฟลเดอร์ 'what3words' ไปยังไดเรกทอรีปลั๊กอินของคุณบนพีซีของคุณ (เช่น C: \ Users \ .qgis2 \ pyton \ plugins \ บน Windows) จากนั้นเปิดใช้งานปลั๊กอิน ผ่านตัวจัดการปลั๊กอินใน QGIS
สิ่งอื่นที่คุณต้องการคือคีย์ What3Words API ซึ่งคุณสามารถรับได้โดยลงทะเบียนกับพวกเขาในหน้านี้: http://developer.what3words.com/