2012-08-05 4 views
0

osm으로 pathcreator에서 작업 중입니다. 선을 추가하면 문제가 없지만 매우 긴 선을 만들고 확대하면 높은 선명도로 선이 사라집니다. 뷰포트가 선의 시작 및/또는 끝점에서 멀리 떨어져 있으면 이것이 나타납니다. 어쩌면 선을 쪼개서 도울 수는 있지만, 이것의 최대 크기는 어느 정도입니까? 내가 그래서 아마 .. 어떤 아이디어 뭔가를 망치는 단지 메신저 OSM 아주 새로운 해요오픈 스트리트 맵 긴 줌 레벨에서 긴 선이 사라짐

$(document).ready(function() {  
      var map = new OpenLayers.Map('map'); 

      var mapnik = new OpenLayers.Layer.OSM.Mapnik("Mapnik"); 
      map.addLayer(mapnik); 

      var path = new OpenLayers.Layer.Vector("path"); 
      map.addLayer(path); 

      var pathStyle = { 
        strokeColor: "#0033ff", 
        strokeOpacity: 0.7, 
        strokeWidth: 5 
      }; 

      var points = new Array(
        new OpenLayers.Geometry.Point(-7856503.5146562, 880554.5664875), 
        new OpenLayers.Geometry.Point(8502243.5278938, 724011.5325875) 
      ); 

      var line = new OpenLayers.Geometry.LineString(points); 

      var lineFeature = new OpenLayers.Feature.Vector(line, null, pathStyle); 
      path.addFeatures([lineFeature]); 

      map.zoomToExtent(path.getDataExtent()); 
    }); 

을 : 당신이 라인 사라지고 레벨 7을 확대하는 경우

여기에 축소 된 코드 샘플은 무엇입니까? 미리 감사드립니다.

답변

0

나는 방화 광구로 놀고 있었고 svg 요소를 통과했습니다. osm은 선을 만들기 위해 svg 폴리 라인을 사용합니다. 라인의 값은 15000을 넘는 값으로 공간이 부족합니다. 렌더러의 값은 많은 편입니다.

나는이 문제에 대한 버그 리포트를 체크 : https://github.com/openlayers/openlayers/issues/617

나의 현재 해결 방법은 100km의 peaces에 라인을 분할하는 것입니다. 이것은 작동하지만 더 많은 계산이 필요합니다.

누군가가 여기에서 인터뷰하는 경우 유용한 수학이있는 사이트가 있습니다. http://www.movable-type.co.uk/scripts/latlong.html