[OpenLayers-Users] expand on georss layer
Don Martin
donm at alaska.net
Fri Aug 22 12:05:11 EDT 2008
We've got a georss example working on our site - truck tracking records from
a sql query rendered as georss.
We need a couple of other things from this layer if possible -
1. color coded markers/icons indicating when the vehicle is next scheduled
to be available - so different markers for a particular record determined by
a field in our query (then to xml?).
2. clicking on a marker needs to pass an id (that we can tie back to the
sql table/query) to a textbox on the page but off the map to support further
processing.
Included below is the working geoss layer call and an uninformed attempt at
a GML/georss layer (obviously not really getting it).
Would someone kindly direct me to a sample (GML or vector presumably) that
would support our needs?
working georss layer:
function loadvehicleLayers() {
carrier_id = document.getElementById('DDvcarrier').value;
vehicle_ref = document.getElementById('DDvvehicle').value;
datepass = document.getElementById('selvdateTextBox').value;
listname = "vehicletrack";
filecall =
"../component/mapxml.aspx?actv="+listname+"&carv="+carrier_id+"&vehv="+vehicle_ref+"&datev="+datepass
icon = new OpenLayers.Icon("../images/map/Pushpin.png", new
OpenLayers.Size(18,18));
vehiclelay = new OpenLayers.Layer.GeoRSS( 'vehicle', filecall,
{'icon':icon, 'useFeedTitle':false });
vehiclelay.events.register("loadend", window, vehicletrac);
function vehicletrac() {
vehiclelineLayer = new
OpenLayers.Layer.PointTrack(vehiclelay.name + " track",
{dataFrom:
OpenLayers.Layer.PointTrack.dataFrom.SOURCE_NODE});
vehiclelineLayer.addNodes(vehiclelay.features);
map.addLayer(vehiclelineLayer);
vehiclelay.setName(vehiclelay.name + " node");
var feature, marker;
for (var i = vehiclelay.features.length-1; i>0; i--) {
if (vehiclelay.features[i].data.popupContentHTML.indexOf(
"Untitled") != -1) {
vehiclelay.removeMarker(vehiclelay.markers[i]);
}
}
map.raiseLayer(vehiclelay, 4);
map.addLayer(vehiclelay);
}
georss xml created from sql query:
<?xml version="1.0" encoding="utf-8" ?>
- <rss version="2.0" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#">
- <channel>
- <item>
<pubDate>6/4/2008 8:00:48 AM</pubDate>
<geo:lat>61.221620000</geo:lat>
<geo:long>-149.850155000</geo:long>
<title>begin point: 08:00:48</title>
<description>Location: UNITED FRT and TRANS</description>
</item>
- <item>
<pubDate>6/4/2008 8:36:20 AM</pubDate>
<geo:lat>61.164890000</geo:lat>
<geo:long>-149.861286000</geo:long>
<title>BobTail - 08:36:20</title>
<description>Location: SMURFIT - ANCH RECYCL - vehicle: 86 - driver: Tim
February</description>
</item>
< ... >
non-working GML/georss layer attempt:
function loadvehicleLayers() {
carrier_id = document.getElementById('DDvcarrier').value;
vehicle_ref = document.getElementById('DDvvehicle').value;
datepass = document.getElementById('selvdateTextBox').value;
listname = "vehicletrack";
filecall =
"../component/mapgeorss.aspx?actv="+listname+"&carv="+carrier_id+"&vehv="+vehicle_ref+"&datev="+datepass
var in_options = {
//'internalProjection': new
OpenLayers.Projection("EPSG:900913"),
//'externalProjection': new
OpenLayers.Projection("EPSG:4326"),
'type':'eventType alertLevel'
};
var styleMap = new OpenLayers.StyleMap({
fillOpacity: 1,
pointRadius: 10
});
var lookup = {
dflt: {externalGraphic: "../images/map/vertex[1].png"},
test1: {externalGraphic: "../images/map/vertex[1].png"},
test2: {externalGraphic: "../images/map/vertex[1].png"}
}
styleMap.addUniqueValueRules("default", "type", lookup);
var georssformat = new OpenLayers.Format.GeoRSS(in_options);
//OpenLayers.Format.GeoRSS.prototype.xy = true;
vehiclelay = new OpenLayers.Layer.GML("vehicle node", filecall,
{format: georssformat, styleMap: styleMap});
map.raiseLayer(vehiclelay, 4);
map.addLayer(vehiclelay);
}
georss (for GML) xml created from sql query:
<?xml version="1.0" encoding="utf-8" ?>
- <rss version="2.0" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#">
- <channel>
- <item>
<pubDate>6/4/2008 8:00:48 AM</pubDate>
<geo:point>61.221620000 -149.850155000</geo:point>
<title>begin point: 08:00:48</title>
<description>Location: UNITED FRT and TRANS <br> new rec - ../default.aspx
new manefest record </description>
<type>dflt</type>
</item>
- <item>
<pubDate>6/4/2008 8:36:20 AM</pubDate>
<geo:point>61.164890000 -149.861286000</geo:point>
<title>BobTail - 08:36:20</title>
<description>Location: SMURFIT - ANCH RECYCL - vehicle: 86 - driver: Tim
February <br> new rec - ../default.aspx new manefest record </description>
<type>dflt</type>
</item>
- <item>
< ... >
would appreciate any suggestions.
Don
--
View this message in context: http://www.nabble.com/expand-on-georss-layer-tp19080770p19080770.html
Sent from the OpenLayers Users mailing list archive at Nabble.com.
More information about the Users
mailing list