ระบบสารสนเทศทางภูมิศาสตร์

ถามตอบสำหรับนักทำแผนที่นักภูมิศาสตร์และผู้เชี่ยวชาญด้าน GIS

1
เปลี่ยนไอคอนเครื่องหมายเมื่อคลิกโดยใช้แผ่นพับ
ฉันมีแผนที่ที่มีเครื่องหมาย (> 100) อยู่มากมาย ฉันต้องการจะทำเช่นนั้นเพื่อให้การคลิกที่ไอคอนเหล่านี้เปลี่ยนเป็นเวอร์ชันที่เน้นสี ฉันได้สร้างไอคอนที่กำหนดเองสองไอคอนไอคอนปกติหนึ่งรายการและไอคอนหนึ่งที่เน้นไว้ ฉันได้รับการทำงานกับเครื่องหมายเดียว แต่ไม่สามารถหาวิธีการตั้งค่าเพื่อให้แต่ละไอคอนสามารถเปลี่ยนแปลงได้โดยคลิกที่มัน นี่คือรหัสการทำงานสำหรับหนึ่งไอคอน: var testmarker = L.marker([44.0, -73.0], {icon: unselectedIcon}); testmarker.on('click', function(e) { testmarker.setIcon(selectedIcon); }); อย่างไรก็ตามฉันมีเครื่องหมายจำนวนมากและใช้สำหรับวงเพื่อวางพวกเขา: //points is a 2 dim array with lat/long pairs for (i = 0; i <= points.length-1; i++) { var marker = L.marker([points[i][0], points[i][1]], {icon: unselectedIcon}); } marker.on('click', function(e) …
20 leaflet  markers 

9
กำลังดูข้อมูล LiDAR จากเว็บเบราว์เซอร์หรือไม่
ฉันกำลังมองหาโฮสต์ lidar data บนเซิร์ฟเวอร์ของฉันเองและให้ลูกค้าสามารถดูข้อมูลนั้นผ่านเว็บเบราว์เซอร์ในรูปแบบจุด 3D cloud (ไฟล์จะอยู่ในรูปแบบ. Atlas หรือเทียบเท่า) ซึ่งอาจมีความสามารถในการวัดคุณสมบัติ มีใครรู้บ้างเกี่ยวกับซอฟต์แวร์ที่ใช้งานได้ง่ายซึ่งสามารถทำได้ ฉันไม่ได้มองหาโอเพนซอร์ซและฉันต้องการบางสิ่งบางอย่างแบบพลักแอนด์เพลย์เพราะฉันไม่ใช่โปรแกรมเมอร์

7
จะเริ่มเรียนรู้วิธีสร้างแผนที่ด้วย QGIS ได้ที่ไหน
ฉันไม่มีทักษะใน GIS "การทำแผนที่" หรือโปรแกรมแผนที่อื่น ๆ เป็นผู้วางแผนมณฑลมาเป็นเวลา 25 ปีโดยมีเจ้าหน้าที่ "ร่าง" อยู่เสมอ ตอนนี้ฉันอยู่ในเอเจนซี่อื่นและต้องสามารถสร้างแผนเว็บไซต์ขั้นพื้นฐานและน่าสนใจและแผนที่พื้นที่ QGIS เป็นเครื่องมือที่ใช่หรือไม่? ฉันเห็นเว็บไซต์ของนักวางแผนว่าสามารถดาวน์โหลดได้ฟรีพร้อมกับ GIMP และ SketchUP ฉันต้องการคำแนะนำของแท้เกี่ยวกับเรื่องนี้ไม่ใช่สิ่งที่เป็นไปไม่ได้ทางเทคนิคสำหรับสถานการณ์ของฉัน

3
ปิดใช้งานการโต้ตอบแผ่นพับชั่วคราว
ฉันจะปิดการใช้งาน zoming / draging Mapview ใน Leaflet.js ชั่วคราวได้หลายวิธี แต่ก็ไม่มีโชค เป็นสิ่งสำคัญที่จะทำให้เป็นการชั่วคราวและฉันยังต้องการตัวเลือกเพื่อเปิดใช้งานอีกครั้ง
20 leaflet 

6
การสร้างจุดในระยะทางที่กำหนดตามเส้นโดยใช้ QGIS?
ฉันต้องการใช้จุดสร้าง QGIS ตามแนวเส้น แต่ตามระยะทางที่กำหนด ฉันพบเครื่องมือ GRASS สองตัวในกล่องเครื่องมือ SEXTANTE: v.to.points v.segment ฉันลองv.to.pointsตั้งค่าระยะห่างสูงสุดระหว่างจุดในหน่วยแผนที่เป็น 100 และได้สิ่งนี้ ภาพถ่ายที่สองแสดงให้เห็นอย่างใกล้ชิดจากภาพบน ผลที่ได้คือสิ่งที่ฉันต้องการ แต่ฉันต้องการได้คะแนนน้อยลงแต่แม้ฉันจะตั้งระยะทางสูงสุดเป็น 1,000 หรือ 1000000 ผลลัพธ์ก็เหมือนกัน ฉันพยายามใช้v.segmentแต่ฉันไม่มีไฟล์ที่มีกฎของเซ็กเมนต์ Underdark ให้คำแนะนำบางอย่างและฉันพยายามรูปทรงเรขาคณิตที่บดอัดให้ช่วงเวลา ครั้งแรกมันทำให้ฉันมีรูปร่างไฟล์ polyline เหมือนกับอินพุตของฉันและจากนั้นฉันใช้แยกโหนดเพื่อพยายามหาจุดเหล่านั้น แต่ผลลัพธ์เหมือนกันกับที่ฉันใช้v.to.pointsไม่ว่าฉันจะตั้งช่วงเวลาไว้ที่ใด ฉันจะสร้างคะแนนตามเส้นได้อย่างไรและในระยะทางที่กำหนด?

2
แบบจำลองการวัด“ XYZM” คืออะไร?
SpatiaLiteรองรับโมเดลมิติที่แตกต่างจำนวนมาก ที่น่าสนใจคือบางค่าสนับสนุนพิกัด "การวัด" (XYM, XYZM) จะใช้การวัดร่วมนี้ได้อย่างไรและคำที่ถูกต้องสำหรับการค้นหาเพื่อค้นหาว่าเป็นอย่างไร

1
วิธีการแยกรูปหลายเหลี่ยมเว้าเป็นรูปหลายเหลี่ยมนูนใน Arcpy
ฉันกำลังมองหาเครื่องมือหรืออัลกอริทึมเพื่อตรวจจับรูปหลายเหลี่ยมเว้าและแบ่งออกเป็นรูปหลายเหลี่ยมนูน เช่นเดียวกับที่อธิบายในรูปภาพรูปหลายเหลี่ยมสีน้ำเงินแบ่งออกเป็นรูปหลายเหลี่ยม A และ B ฉันใช้ Arcpy ภายใต้ Arcgis 10.1

8
จะหยุดการประมวลผลข้อความสั่งด้วยตนเองในหน้าต่าง Python ของ ArcMap ได้อย่างไร?
หนึ่งจะหยุดการดำเนินการของกระบวนการที่ใช้เวลานานในคอนโซลหลามของ ArcMap ได้อย่างไร? ตัวอย่างเช่นคุณจะแบ่งการทำซ้ำที่ยาวนานเช่นเดียวกับที่ด้านล่างเมื่อเริ่มต้นอย่างไร for i in range(1, 50): # some long process which takes over a minute to complete ฉันต้องการที่จะหยุดกระบวนการในเวลาใดที่ฉันต้องการโดยการกดแป้นพิมพ์พร้อมกันการคลิกปุ่มหรือสิ่งที่คล้ายกันในขณะที่รหัสฉันมีการป้อนข้อมูลในหน้าต่างคอนโซลที่กำลังทำงาน

1
ArcGIS 10.1 Python AddIn ใช้การประมวลผลแบบมัลติโพรเซสขัดข้อง ArcMap?
ฉันต้องการเรียกใช้งานมัลติโปรเซสเซอร์จากเครื่องมือเสริมของหลาม ปัญหาของฉันคือกระบวนการทำให้ล้มเหลว โดยทั่วไปเกิดปัญหา ArcMap นี่คือรหัสพื้นฐานของฉัน: def function(startOID, endOID, fc): wrksp = r"c:\temp\mp_addintest\data\test_%s.txt" % (int(startOID) + int(endOID)) # real logic removed to dumb it down with open(wrksp, 'w') as writer: writer.write("%s to %s from %s \n" % (startOID, endOID, fc)) return wrksp class btnMP(object): """Implementation for src_addin.MPButton (Button)""" def __init__(self): self.enabled …

2
สร้างชั้นรูปหลายเหลี่ยมจากชั้นรูปหลายเหลี่ยม
ระบบของเราคาดหวังว่าไฟล์รูปหลายเหลี่ยมจะเป็นตัวแทนของชุดรูปหลายเหลี่ยมที่ไม่ตัดกันและรูปหลายเหลี่ยมที่ถูกต้องทางเรขาคณิต (หลาย) โดยเฉพาะฟิลด์ฟาร์ม เรามักจะได้รับการเป็นตัวแทนของฟาร์มและเขตข้อมูลของพวกเขาในรูปแบบ polyline shapefiles ที่มีเขตแดน polylines ซึ่งโดยทั่วไปจะมีข้อผิดพลาดทางภูมิศาสตร์ขนาดเล็กเช่นห้อยต่องแต่ง มีวิธีที่เชื่อถือได้ในการแปลงชั้น polyline เป็นชั้นรูปหลายเหลี่ยมที่ซึ่งขอบเขตของรูปหลายเหลี่ยมถูกคำนวณเป็นลูปน้อยที่สุดรอบ ๆ โพลีนในรูปร่างหรือไม่? ฉันเข้าใจว่าฉันอาจต้องจัดระเบียบ polylines ก่อน ฉันสนใจโซลูชันที่เกี่ยวข้องกับ Quantum GIS หรือเครื่องมือฟรีอื่น ๆ เป็นหลักเนื่องจาก บริษัท ของฉันไม่ได้ซื้อแพ็คเกจระดับมืออาชีพใด ๆ

6
วิธีปรับปรุงประสิทธิภาพการเรนเดอร์ของไฟล์รูปร่างที่มีขนาดใหญ่มาก?
ฉันมีรูปหลายเหลี่ยมรูปร่างที่มีองค์ประกอบไฟล์. 100MB .dbf และ 500MB .shp เหตุผลที่มันมีขนาดใหญ่มากก็คือมันถูกจัดเป็นฐานที่ดินสำหรับทั้งอำเภอ ทุกครั้งที่ฉันดูไฟล์ใน ArcCatalog หรือ ArcMap และย้ายหน้าต่างมุมมองออกไปเล็กน้อยไฟล์ทั้งหมดจำเป็นต้องวาดใหม่ทั้งหมดตั้งแต่เริ่มต้น ฉันได้ลองการจัดทำดัชนีเชิงพื้นที่และนำเข้าสู่ฐานข้อมูลภูมิศาสตร์ - ทั้งสองวิธีไม่ได้ให้การปรับปรุงประสิทธิภาพที่น่าทึ่งใด ๆ เกี่ยวกับการเรนเดอร์ หน้าความช่วยเหลือของ Esri ชี้ให้เห็นว่าเพื่อปรับปรุงประสิทธิภาพการทำงานของ shapefile ผู้ใช้สามารถวางมาตรฐานไฟล์ได้ ในขณะนี้จะทำงานได้อย่างชัดเจนฉันไม่ต้องการสูญเสียข้อมูลใด ๆ การแยกไฟล์ขึ้นนั้นไม่เหมาะเนื่องจากฉันกำลังทำการประมวลผลทางภูมิศาสตร์ / สอบถามจำนวนมากด้วยพื้นที่ทั้งหมด ฉันเดาว่าฉันสามารถหลีกเลี่ยงการดูทั้งพื้นที่ได้ในคราวเดียว แต่บางครั้งตัวอย่างเช่นมันเป็นการดีที่จะดูว่าส่วนใดของไฟล์ที่แบบสอบถามเลือกไว้ มีวิธีอื่นที่ฉันสามารถทำได้เพื่อปรับปรุงประสิทธิภาพการแสดงผลหรือไม่ (ในทางทฤษฎีแล้วการสร้างรูปร่างของ "ปิรามิด" จะเป็นอุดมคติ - ฉันไม่แน่ใจว่าทำไม ArcGIS ไม่เคยสนับสนุนวิธีการดังกล่าว - อย่างน้อยฉันก็รู้ ...

4
ค้นหาจุดภายในระยะทางโดยใช้ MySQL
ฉันมีตาราง mySQL พร้อมชื่อผู้ใช้ละติจูดและลองจิจูดของผู้ใช้ ฉันต้องการรับรายชื่อผู้ใช้ที่อยู่ในวงกลมหรือสี่เหลี่ยมจัตุรัสของละติจูดและลองจิจูดที่กำหนดตามระยะทางที่กำหนด ตัวอย่างเช่น Lat = 78.3232 และ Long = 65.3234 และ distance = 30 miles ฉันต้องการรับรายชื่อผู้ใช้ที่อยู่ในระยะทาง 30 ไมล์จากจุด 78.3232 และ 65.3234 เป็นไปได้ไหมที่จะแก้ปัญหานี้ด้วยการค้นหาเดี่ยว? หรือคุณสามารถให้คำแนะนำฉันเริ่มแก้แบบสอบถามนี้ได้หรือไม่ ฉันยังใหม่กับข้อมูลทางภูมิศาสตร์
20 distance  mysql 

4
ภาษาที่ดีที่สุดในการเขียนโปรแกรมด้วย GDAL
ฉันจะเริ่มสร้างโปรแกรมเพื่อจัดการข้อมูลทางภูมิศาสตร์จากเซิร์ฟเวอร์ PostGIS และจะใช้ GDAL ตามประสบการณ์ของคุณด้วยภาษาที่ดีที่สุดในการเขียนโปรแกรมด้วยหรือไม่ ฉันสามารถเขียนโปรแกรมใน Perl และ Python ได้ แต่ต้องการทราบภาษาที่มีโค้ดเพิ่มเติมเพื่อนำมาใช้ใหม่ตัวอย่างไลบรารีและอื่น ๆ
20 python  postgis  gdal 

4
ชั้นซ้อนแรสเตอร์ใน QGIS?
ฉันมีข้อมูลหลายสเปกตรัมซึ่งแต่ละแถบแยกเป็นไฟล์ Raster ฉันจะเลเยอร์แรสเตอร์เหล่านี้อย่างไรเพื่อให้ได้แรสเตอร์หนึ่งวงที่มี 3 แบนด์แทนที่จะเป็นแรสเตอร์ 3 แบบที่แตกต่างกัน? มันค่อนข้างง่ายที่จะทำใน ERDAS และ ArcGIS แต่ฉันไม่ได้คิดวิธีการทำใน QGIS

3
การปรับให้เรียบ / สอดแทรกแรสเตอร์ใน Python โดยใช้ GDAL?
ฉันกำลังพัฒนาใน Python และใช้ GDAL จาก OSGEO เพื่อจัดการและโต้ตอบกับ rasters และ shapefiles ฉันต้องการนำไฟล์รูปร่างที่มีคุณสมบัติจุดและสอดแทรกเข้าไปในพื้นผิวแบบแรสเตอร์ ตอนนี้ฉันกำลังใช้เมธอด 'RasterizeLayer' ซึ่งเบิร์นค่าจากฟีเจอร์จุดไปยังแรสเตอร์ (ซึ่งถูกตั้งค่าด้วยค่า nodata ทั้งหมด) แต่ทำให้พิกเซลที่ไม่มีการแตะทั้งหมดเป็นค่า 'โนดาต้า' ฉันจึงถูกทิ้งให้อยู่กับแรสเตอร์ประเภทหมากรุก สิ่งที่ฉันมีหลังจากใช้ RasterizeLayer: สิ่งที่ฉันต้องการสำหรับผลิตภัณฑ์ขั้นสุดท้าย: ฉันเชื่อว่าฟังก์ชั่นที่ฉันกำลังมองหาเรียกว่า 'Spline_sa ()' จากการนำเข้า arcgisscripting GDAL มีฟังก์ชั่นที่คล้ายกันหรือมีวิธีอื่นในการรับเอาต์พุตที่ต้องการหรือไม่?

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