[OpenLayers-Users] Add labels above the lines.

adidas xkadidas at gmail.com
Fri Jul 27 05:44:01 PDT 2012


27.07.2012 15:38, adidas пишет:
> 27.07.2012 15:28, Alexandre Dubé пишет:
>> 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
>>
>>
> The layer of labels is ABOVE all.
I meant that the layer with labels to the most recent.


More information about the Users mailing list