[OpenLayers-Users] Add labels above the lines.

Alexandre Dubé adube at mapgears.com
Fri Jul 27 05:28:19 PDT 2012


Hi Adidas,

Layers are displayed on top of each other in the order they were added 
to the map : first added is at the bottom, last is on top. The exception 
to that rule are layers with baseLayer:true property set, which are 
always at bottom.

Try to look in what position your label layer is added and push it to 
the end.

HTH,

Alexandre


On 12-07-27 06:54 AM, adidas wrote:
> Hello! How to add labels above the lines?
> Labels are added as follows:
> var styleMarkersLabels = new OpenLayers.Style( // стили для надписей 
> узлов
> {
> strokeWidth: 2,
> labelYOffset: 10,
> label: "${label}",
> fontColor: 'red',
> fontSize: 9,
> fontWeight: "bold",
> labelOutlineColor: "black",
> labelOutlineWidth: 1
> });
> var vectorPoint = new OpenLayers.Layer.Vector("Узлы (надписи)",
> {
> styleMap: new OpenLayers.StyleMap(
> { "default": styleMarkersLabels,
>
> "select": { pointRadius: 20}
> })
> });
> map.addLayer(vectorPoint);
>
> function addPoint(lon, lat, title, ident, layr){
> var ttt = new OpenLayers.LonLat(parseFloat(lon), parseFloat(lat));
> ttt.transform(new OpenLayers.Projection("EPSG:4326"), new 
> OpenLayers.Projection("EPSG:900913"));
> for (var k = 0; k < layr.features.length; k++) {
> if(layr.features[k].attributes.PointId==ident) {
> layr.features[k].move(ttt);
> layr.features[k].attributes.label=title;
> return false;
> }
> }
> var point0 = new OpenLayers.Geometry.Point(parseFloat(lon), 
> parseFloat(lat));
> point0.transform(new OpenLayers.Projection("EPSG:4326"), new 
> OpenLayers.Projection("EPSG:900913"));
> layr.addFeatures(new OpenLayers.Feature.Vector(point0, { label: title, 
> name: title, PointId: ident }));
> }
>
> var lat2, lon2, title, ident;
> for (l = 0; l < nodesLabels_Count; l++) {
> lat2 = nodesLabels_arr[l]["points"][0]["lat"];
> lon2 = nodesLabels_arr[l]["points"][0]["lon"];
> title = nodesLabels_arr[l]["title"];
> ident = nodesLabels_arr[l]["ident"];
> addPoint(lon2, lat2, title, ident, map.layers[4]);
> }
> But i got it: http://softez.pp.ua/labels.PNG
> Map here: http://softez.pp.ua/fiberms/fiberms/map.php
> Thanks!
> _______________________________________________
> Users mailing list
> Users at lists.osgeo.org
> http://lists.osgeo.org/mailman/listinfo/openlayers-users


-- 
Alexandre Dubé
Mapgears
www.mapgears.com



More information about the Users mailing list