open layers LineString not working
Posted
by
AlexS
on Stack Overflow
See other posts from Stack Overflow
or by AlexS
Published on 2011-02-17T17:59:44Z
Indexed on
2011/02/20
15:25 UTC
Read the original article
Hit count: 369
Sorry to bother you guys, but I'm stuck with his problem for half a day.
I want to draw poly line in OpenLayers using LineString object, so I've copied the example from documentation. It runs ok but i can't see the line on the screen
Code looks like this
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
var map; var lineLayer ; var points; var style; var polygonFeature function test() { lineLayer = new OpenLayers.Layer.Vector("Line Layer"); style = { strokeColor: '#0000ff', strokeOpacity: 1, strokeWidth: 10 }; map.addLayer(lineLayer); points = new Array(); points[0] =new OpenLayers.LonLat(-2.460181,27.333984 ).transform(new OpenLayers.Projection("EPSG:4326"), map.getProjectionObject());; points[1] = new OpenLayers.LonLat(-3.864255,-22.5 ).transform(new OpenLayers.Projection("EPSG:4326"), map.getProjectionObject());; var linear_ring = new OpenLayers.Geometry.LinearRing(points); polygonFeature = new OpenLayers.Feature.Vector( new OpenLayers.Geometry.Polygon([linear_ring]), null, style); lineLayer.addFeatures([polygonFeature]); alert("1"); } function initialize() { map = new OpenLayers.Map ("map_canvas", { controls:[ new OpenLayers.Control.Navigation(), new OpenLayers.Control.PanZoomBar(), new OpenLayers.Control.LayerSwitcher(), new OpenLayers.Control.Attribution()], maxExtent: new OpenLayers.Bounds(-20037508.34,-20037508.34,20037508.34,20037508.34), maxResolution: 156543.0399, numZoomLevels: 19, units: 'm', projection: new OpenLayers.Projection("EPSG:900913"), displayProjection: new OpenLayers.Projection("EPSG:4326") }); // Define the map layer // Here we use a predefined layer that will be kept up to date with URL changes layerMapnik = new OpenLayers.Layer.OSM.Mapnik("Mapnik"); map.addLayer(layerMapnik); var lonLat = new OpenLayers.LonLat(0, 0).transform(new OpenLayers.Projection("EPSG:4326"), map.getProjectionObject()); map.zoomTo(3); map.setCenter(lonLat, 19); test(); }
</head>
<body onload="initialize()" >
<div id="map_canvas" style="width: 828px; height: 698px"></div>
I'm sure I'm missing some parameter in creation of map or something but I really can't figure which one.
© Stack Overflow or respective owner