คำถามติดแท็ก openlayers-2

ใช้แท็กนี้เมื่อคุณใช้เวอร์ชัน 2.x ของชุดเครื่องมือไคลเอนต์ OpenLayers JavaScript

3
ตัวอย่างและอัลกอริทึมของ Openlayers Animation
ฉันสงสัยมานานแล้วว่าผู้คนในชุมชนนี้ใช้ openlayers สำหรับความต้องการแอนิเมชั่น เรารู้เรื่องนี้แล้วว่าการเคลื่อนไหวบนเบราว์เซอร์นั้นค่อนข้างน่าเบื่อ แต่เมื่อแผนที่พบกับอนิเมชั่นผมเชื่อว่าสิ่งดีๆจะหมดไป คุณรู้จักเว็บไซต์หรืออัลกอริทึมที่ดีสำหรับแอนิเมชั่นที่เข้ากันได้กับ openlayers หรือไม่? นี่คือสิ่งที่ฉันรู้เกี่ยวกับแอนิเมชันโค้ดและตัวอย่างบางอย่าง กรุณาแบ่งปันความรู้ของคุณเกี่ยวกับแอนิเมชั่นกับ openlayers สำหรับผู้ที่ต้องการสิ่งนี้ ... รหัสจาวาสคริปต์พื้นฐานสำหรับการเพิ่มสถานที่บนแผนที่ที่มีการหน่วงเวลา .. time = 0; for (var i = 0; i < 5; i++) { time += 1000; setTimeout(function(j) { return function() { console.log("var is now", j); } }(i), time); } i2maps เป็นสภาพแวดล้อม geocomputing มันมีกรอบการเขียนโปรแกรมที่ยืดหยุ่นสำหรับการค้นพบความรู้จากข้อมูลเชิงพื้นที่และการสร้างภาพบนเว็บ ไลบรารี Javascript …

3
รหัสการประมาณการ Web Mercator ปัจจุบันคืออะไร
การฉายเว็บ Mercator ที่ได้รับความนิยมจาก Google Maps ดูเหมือนว่าจะได้รับรหัส EPSG ใหม่ทุกสองสามปี EPSG: 900913 (Google ในข้อความของเครื่องคิดเลข) เป็นรหัสที่ไม่เป็นทางการ กำไรต่อหุ้น: 3785 - เป็นประมาณการที่ฉันใช้สำหรับชุดข้อมูลของฉัน อย่างไรก็ตามโพสต์บล็อกนี้แสดงให้เห็นว่าตอนนี้รหัสคือ EPSG: 3857 การฉายภาพนี้สามารถพบได้บนไซต์ EPSGแต่ดูเหมือนว่าจะใช้รหัส SR-ORG: 6864 และอ้างว่า"มันไม่ใช่ระบบทางภูมิศาสตร์ที่รู้จัก: ดู WGS 84 / World Mercator (รหัส CRS 3395)" ดังนั้นรหัสอย่างเป็นทางการที่จะใช้คืออะไร?

5
จะวางเลเยอร์ GeoServer ไว้ข้างหลังการตรวจสอบสิทธิ์ได้อย่างไร
ฉันต้องการเผยแพร่เลเยอร์แผนที่โดยใช้ OpenLayers และ GeoServer แม้ว่าจะง่ายพอที่จะตั้งค่า แต่ฉันก็แพ้เล็กน้อยเมื่อพูดถึงความเป็นไปได้ในการตรวจสอบสิทธิ์ สิ่งที่ฉันต้องการคือการสร้างผู้ใช้ที่แตกต่างกันซึ่งจะเข้าสู่หน้าต่างแผนที่ของพวกเขาด้วยการลงชื่อเข้าใช้ด้วยชื่อผู้ใช้และรหัสผ่านของตัวเอง วิธีนี้สามารถทำได้อย่างปลอดภัยเพื่อให้ผู้ใช้ของฉันไม่สามารถเข้าถึงเลเยอร์ของกันและกันได้ ฉันเข้าใจว่ามันเป็นเรื่องง่ายมากที่จะ "แฮ็ค" การตั้งค่าโดยทำแบบสอบถามกับ GeoServer ที่หนึ่งก็ขอให้รายการชั้นที่มีอยู่ทั้งหมด ตัวเลือกของฉันคืออะไร? ฉันคิดว่า apache สามารถช่วยได้เมื่อตั้งค่าในเซิร์ฟเวอร์ ubuntu ของฉัน บทเรียนใด ๆ ในเรื่องนี้?

4
วิธีการกำหนดลำดับเลเยอร์ใน Openlayers?
ฉันมีชั้นเครื่องหมายสองชั้นเวกเตอร์และสองชั้นแรสเตอร์ เลเยอร์เครื่องหมายถูกปกคลุมด้วยแรสเตอร์สองชั้น มีวิธีย้ายเลเยอร์มาร์กเกอร์เสมอหรือไม่? แก้ไข:ลำดับของดัชนี Z ทำงานได้ดีในเลเยอร์เวกเตอร์ แต่เมื่อฉันเพิ่มเลเยอร์แรสเตอร์ WMS อื่นบนแผนที่ด้วยดัชนี Z ที่ต่ำกว่าเลเยอร์แรสเตอร์ยังคงครอบคลุมเลเยอร์เวกเตอร์ แก้ไข:ใครสามารถชี้ให้เห็นความแตกต่างของลำดับการแสดงผลในแง่ของ "LayerIndex" และ "ดัชนี Z" ของเลเยอร์? ฉันคิดว่าดัชนีเลเยอร์จัดการกับลำดับการซ้อนทับและ Zindex จัดการกับลำดับคุณลักษณะในเลเยอร์เวกเตอร์ฉันไม่ถูกต้องหรือไม่

8
OpenLayers - วาดแผนที่ใหม่หลังจากปรับขนาดคอนเทนเนอร์
ในเว็บแอปพลิเคชันของฉันฉันต้องการให้ผู้ใช้กำหนดขนาดของคอนเทนเนอร์แผนที่ ทุกอย่างทำงานได้ดีเมื่อมีการขยายคอนเทนเนอร์เล็กน้อย (เห็นได้ชัดว่านี่เป็นเพราะกระเบื้องที่อยู่ด้านหลังขอบถูกโหลดแล้ว) อย่างไรก็ตามเมื่อคอนเทนเนอร์ถูกขยายอย่างมีนัยสำคัญ (ในตัวอย่างต่อไปนี้จากความกว้าง 300 ถึง 1000px) จะมีพื้นที่ว่างเหลือ จะทำให้แผนที่วาดใหม่และปรับให้เข้ากับขนาดใหม่ได้อย่างไร? การโทรredraw()ทุกชั้นไม่ได้ช่วยอะไร ไม่ได้ซูมเข้าและออก ฉันทดสอบสิ่งนี้ด้วยผลลัพธ์ที่อธิบายไว้ใน Opera, Chrome และ Firefox ใน IE8 น่าแปลกใจที่ปัญหาไม่เกิดขึ้นและแผนที่ปรับโดยอัตโนมัติ หน้าเว็บแบบง่ายสำหรับการทดสอบ: <html> <head> <style> #mapbox { width: 300px; height: 500px; border: 1px solid black; } </style> <script src="http://openlayers.org/api/OpenLayers.js"></script> </head> <body> <div id="mapbox"></div> <input type="button" id="test" value="resize"> <script> var map = …

4
แอปแผนที่เว็บแบบปูกระเบื้องออฟไลน์
ฉันไม่แน่ใจว่าจะโพสต์ที่นี่หรือใน Stackoverflow เนื่องจากเป็นครอสโอเวอร์ ให้ฉันลองดู ในมาตรฐาน HTML5 ที่นำเสนอมีตัวเลือกในการจัดเก็บข้อมูลการใช้เว็บในแคชท้องถิ่นโดยใช้การแคชอย่างชัดแจ้ง ฉันกำลังมองหาที่จะใช้เทคนิคนี้สำหรับแอปพลิเคชั่นแผนที่บนเว็บแบบออฟไลน์และทำต้นแบบอย่างรวดเร็วที่นี่ตามมาตรฐานการติดตั้งของ Geoserver ฉันเพิ่งฉีกหน้าไคลเอนต์ OpenLayers ที่สร้างขึ้นจากเลเยอร์เริ่มต้นและเปลี่ยน<html>แท็กเป็น <html xmlns="http://www.w3.org/1999/xhtml" manifest="cache.manifest"> และสร้างไฟล์cache.manifestที่อ่านง่าย CACHE MANIFEST http://lima.schaaltreinen.nl:8080/ ซึ่งในความเข้าใจที่ จำกัด ของฉันเกี่ยวกับเรื่องนี้แคชภายในเครื่องทุกอย่างที่โหลดจาก URL นั้น: ไทล์ทั้งหมดและ OpenLayers JS อันที่จริงแล้วเมื่อมีการโทรครั้งแรกใน Firefox จะขอให้ฉันอนุญาตการจัดเก็บในตัวเครื่อง แต่เมื่อฉันกดรีเฟรชไม่ว่าจะออนไลน์หรือออฟไลน์หน้าเว็บก็บ่นว่าไม่มีการกำหนดวัตถุ OpenLayers ดูเหมือนว่าไม่ได้โหลด OpenLayers JS ทุกคนประสบความสำเร็จในการใช้งานแอพพลิเคชั่นแผนที่บนเว็บ OpenLayers แบบออฟไลน์ได้หรือไม่ หรือบอกใบ้ถึงวิธีการตรวจสอบนี้เพิ่มเติม

5
เส้นโครงแผนที่ใน OpenLayers
ฉันต้องการซ้อนทับข้อมูลบางส่วนที่มีการฉายเป็น WGS-84 ในเลเยอร์แผนที่ Google ใน OpenLayers แต่ฉันไม่สามารถทำให้พวกเขาในสถานที่ที่เหมาะสม ฉันทำดังนี้ map = new OpenLayers.Map('map', { numZoomLevels: 20, projection: new OpenLayers.Projection("EPSG:900913"), displayProjection: new OpenLayers.Projection("EPSG: 4326") }); googlelayer = new OpenLayers.Layer.Google("Google street", {sphericalMercator: true}); map.addLayer(googlelayer); veclayer = new OpenLayers.Layer.Vector("vector", { projection: map.displayProjection }; var geojson_format = new OpenLayers.Format.GeoJSON(); veclayer.addFeatures(geojson_format.read(jsonData)); แม้ว่าฉันได้กำหนดveclayerไว้ในการฉาย 4326 แต่ก็ยังตีความว่าเป็น 900913 และระบบการประสานการแสดงผลยังเป็น …

6
วิธีสร้างเครื่องหมายคลัสเตอร์เคลื่อนไหวใน OpenLayers / Leaflet
ฉันต้องการใช้ Leaflet เนื่องจากการเปลี่ยนที่ราบรื่นซึ่ง Openlayers ดูเหมือนว่าพวกเขาไม่สามารถจับคู่ได้ ฉันต้องการความสามารถในการจัดกลุ่มเครื่องหมายด้วยกลุ่มเครื่องหมายสไตล์ที่กำหนดเองโดยเฉพาะ ตัวอย่างที่ดีที่สุดซึ่งแสดงให้เห็นถึงสิ่งที่ฉันกำลังพยายามที่จะบรรลุสามารถพบได้ที่Redfin โปรดสังเกตว่าการวางเมาส์เหนือคลัสเตอร์จะมีภาพเคลื่อนไหวที่ลื่นและโดยคลิกที่เครื่องหมายกลุ่มจะแยกออกเป็นเอฟเฟกต์แบบเคลื่อนไหว เมื่อถึงระดับการย่อ / ขยายที่แต่ละจุดไม่ทับซ้อนกับความอดทนที่กำหนดเครื่องหมายที่แท้จริงจะแบ่งออกเป็นตำแหน่งที่ตั้งในแบบเคลื่อนไหว ฉันชอบที่จะรวมเอฟเฟกต์ที่คล้ายกันเข้ากับสิ่งเหล่านี้และจะขอบคุณคำแนะนำเกี่ยวกับวิธีการที่ดีที่สุดหรือตัวอย่างอื่น ๆ ที่คุณอาจจะทราบ หมายเหตุ: Redfin ดูเหมือนว่าจะใช้แฟลชที่ฉันต้องการอยู่ห่างจาก ในสถานการณ์ที่ดีที่สุดฉันต้องการบรรลุสิ่งนี้ผ่าน Javascript หากเป็นไปได้ แต่คิดว่าอาจต้องทำผ่าน HTML5 / canvas บางทีการใช้ p - Raphael.js หรือ d3.js ความคิดใด ๆ BTW - พบตัวอย่างนี้แต่ดูเหมือนจะใช้กับ Google แผนที่โดยเฉพาะ

5
วิธีเพิ่มเลเยอร์ WFS อย่างง่ายจากแผนที่ GeoServer ไปยัง OpenLayers
ฉันกำลังพยายามเพิ่มหนึ่งในชุดข้อมูลที่รวมกับ GeoServer ไปยังแผนที่ OpenLayers ฉันได้ติดตามบทช่วยสอน OpenGeo เห็นมีกระทู้คล้ายกันที่นี่ แต่ฉันไม่สามารถถอดรหัสได้ ใครสามารถดูรหัสของฉันและการตั้งค่า GeoServer และบอกฉันว่าฉันกำลังทำอะไรผิด นี่คือรหัสของฉัน: //WMS map world = new OpenLayers.Layer.WMS("Global Imagery", "http://maps.opengeo.org/geowebcache/service/wms", { layers : "openstreetmap", format : "image/png" }); map.addLayer(world); //WFS parks = new OpenLayers.Layer.Vector("WFS", { strategies : [new OpenLayers.Strategy.BBOX()], protocol : new OpenLayers.Protocol.WFS({ url : "http://localhost:8081/geoserver/wfs", featureType : "medford:parks", featureNS …

4
ค้นหาคำแนะนำเกี่ยวกับแผนการทำงานแพ็คเกจโอเพนซอร์สทั่วไปหรือไม่ [ปิด]
ปิด คำถามนี้จะต้องมีมากขึ้นมุ่งเน้น ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้มุ่งเน้นที่ปัญหาเดียวโดยแก้ไขโพสต์นี้ ปิดให้บริการใน2 ปีที่ผ่านมา ฉันแค่ต้องการขอคำแนะนำจากผู้เชี่ยวชาญด้าน GIS โอเพ่นซอร์สบนสแต็กที่แนะนำเพื่อใช้สำหรับโครงการที่คาดการณ์ไว้เนื่องจากฉันไม่เข้าใจข้อ จำกัด ของแพ็คเกจส่วนใหญ่อย่างเต็มที่ ฉันรู้ว่าฉันสามารถทำสิ่งที่ฉันต้องการโดยใช้แพ็คเกจต่าง ๆ ของ ESRI แต่ฉันต้องการถูกกว่าและเปิดให้คนทั่วโลกมองเห็น ฉันมั่นใจว่าฉันสามารถรับมือกับความท้าทายใด ๆ และเรียนรู้สิ่งต่าง ๆ ได้ดีพอที่จะทำให้โครงการเกิดขึ้นฉันแค่ต้องการหลีกเลี่ยงเส้นทางที่ผิดตั้งแต่แรก วิสัยทัศน์ของเว็บไซต์ของฉัน: ในแง่ของ UI เว็บไซต์ที่ไม่ใช่ GIS! มีอะไรเพิ่มเติมตามสายของwhereis.com ที่มีทุกสิ่ง (หรือเกือบทุกอย่าง) ที่ทำในกล่องที่วางตัวอยู่เหนือแผนที่ฐาน ข้อมูลเฉพาะไม่สำคัญในตอนนี้เพียงแค่เน้นไม่มีเลเยอร์ GIS พร้อมช่องทำเครื่องหมายในบานหน้าต่างแยกต่างหากเป็นต้นในแง่ของการโต้ตอบกับผู้ใช้ผู้ใช้ที่ลงทะเบียนสามารถสร้างคุณสมบัติ (เช่นสถานที่ดื่มน้ำพุทางเดิน ฯลฯ ) ด้านบนของฐาน แผนที่และแก้ไขคุณสมบัติของตัวเอง หากเป็นไปได้ให้แก้ไขคุณลักษณะเฉพาะของตนเองที่สร้างขึ้นเท่านั้น แผนที่ความร่วมมือจริง ๆ ฉันยังคงอยู่ในโหมดการวิจัยเป็นส่วนใหญ่เล่นกับแพ็คเกจต่างๆ แต่เพื่อความคุ้นเคยทั่วไปและไม่ใช่การทดสอบจริง (ซึ่งจะต้องเรียนรู้ในรายละเอียดก่อน!) PostGIS ดูเหมือนจะเป็นวิธีที่ถูกต้องที่จะไปเป็นฐานข้อมูลพื้นฐานโดยที่ Geoserver / Mapserver …

7
กำลังเปรียบเทียบสองแผนที่กับเว็บอินเตอร์เฟสที่ดี?
เป็นไปได้ใน Leaflet หรือ OpenLayers เพื่อเปรียบเทียบสองแผนที่กับแถบเพื่อเลื่อนระหว่างทั้งสอง? ตัวอย่างรวมถึง: http://www.esri.com/services/disaster-response/hurricanes/hurricane-sandy-the-aftermap http://www.arcgis.com/apps/StorytellingSwipe/index.html?appid=c62112f6ba834227978d8f1cf2b6f5af http://www.abc.net.au/news/specials/qld-floods/ (ไม่ใช่แผนที่) ฉันรู้ว่ามันเป็นไปได้ฉันไม่รู้ว่าจะทำอย่างไร ใครมีความคิดเห็นบ้าง ตัวอย่าง?

4
เว็บไซต์ที่มีโปรไฟล์ระดับสูงคืออะไรที่ใช้ OpenLayers และ PostGIS
คำตอบของคำถามนี้เป็นความพยายามของชุมชน แก้ไขคำตอบที่มีอยู่เพื่อปรับปรุงโพสต์นี้ ขณะนี้ไม่ยอมรับคำตอบหรือการโต้ตอบใหม่ ฉันคิดว่ามีข้อโต้แย้งที่น่าเชื่อถือมากมายสำหรับการใช้ PostGIS แต่ฉันสนใจที่จะแสดงตัวอย่างบุคคลของเว็บไซต์ที่ใช้ PostGIS และ OpenLayers ตัวอย่างที่ฉันได้เห็นคือ: foursquare CartoDB Vizzuality (ตัวอย่างมากมาย) WalkScore (เท่าที่ฉันสามารถบอกได้) มีตัวอย่างอื่นที่แสดงตัวอย่างที่ดีของชุดค่าผสมนี้หรือไม่ ฉันไม่แน่ใจว่ามีเว็บไซต์ใดที่ฉันอยู่ในรายการกำลังใช้ OpenLayers เป็นส่วนสำคัญของการทำงานของพวกเขา แต่ฉันเชื่อว่าพวกเขาทั้งหมดใช้ PostGIS

1
การสร้างฟีเจอร์เวกเตอร์ใน OpenLayers2
ฉันต้องการสร้างคุณสมบัติแบบเวกเตอร์โดยทางโปรแกรมบนแผนที่ของฉัน มันควรจะอยู่ในรูปแบบกระดาษขนาด A4 สำหรับแสดงตัวอย่างก่อนพิมพ์ ฉันได้สร้างตัวควบคุมสำหรับจัดการสิ่งนี้ แต่ตอนนี้ฉันมาถึงจุดที่ฉันต้องการสร้างคุณลักษณะแล้ว และฉันก็ไม่รู้ว่าจะทำอย่างไร ความคิดใด ๆ

2
ลบ / ลบสถานที่จากชั้นเวกเตอร์ OpenLayers
ฉันมีเลเยอร์ OpenLayers พร้อมด้วยเวกเตอร์หลายตัว ฉันรู้ ID ฟีเจอร์ของ OpenLayers (เช่น OpenLayers.Feature.Vector_241) และฉันต้องการจะรู้วิธีลบฟีเจอร์นี้และฟีเจอร์นี้เท่านั้น? ฉันได้พิจารณาลบพวกเขาทั้งหมดแล้ววนรอบอาร์เรย์เพื่อวาดใหม่พวกเขา แต่นี่ดูเหมือนจะไม่ค่อยเหมาะสมและยืดยาว ฉันได้ลองใช้รหัส folllowing หลายเวอร์ชันแล้ว: layer.removeFeatures( featureID ); และ layer.removeFeatures( [featureID] ); และ layer.removeFeatures( {feature : featureID }); ฯลฯ ... ยินดีต้อนรับทุกความช่วยเหลือ! ขอบคุณ ค

6
วิธีการใช้ ST_Intersection
ต่อไปนี้เป็นข้อมูลสรุปโดยย่อเกี่ยวกับสิ่งที่ฉันพยายามทำ: ฉันมี 3 ตารางใน Postgres, 'a' และ 'b', แต่ละอันมีคอลัมน์รูปหลายเหลี่ยมและ 'c' มีคอลัมน์จุด สิ่งที่ฉันพยายามทำที่นี่คือการหาจุดตัดรูปทรงเรขาคณิตระหว่าง 'a', 'b' และ 'c' และเพื่อแสดงรูปทรงเรขาคณิตดังกล่าวบนเลเยอร์เวกเตอร์ของเลเยอร์ OpenLayers ฉันรู้วิธีแสดงรูปทรงเรขาคณิตแบบใด ๆ จากสตริงใน OpenLayers แต่ฉันมีปัญหากับฟังก์ชัน ST_Intersection ของ PostGIS ฉันกำลังทำสิ่งนี้: SELECT ST_Intersection(a.geom, b.geom) as inter from a, b; โดยที่ a.geom และ b.geom เป็นทั้งคอลัมน์รูปทรงเรขาคณิตและฉันได้รับข้อความแสดงข้อผิดพลาดนี้: NOTICE: TopologyException: found non-noded intersection between 515172 2.14408e+06, 497067 2.13373e+06 …

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