Ho seguito questo tutorial: http://workshop.pgrouting.org/chapters/geoext_client.html#select-the-start-and-final-destination
Contiene un controllo Openlayers.Control.DrawFeatures definito nel seguente esempio di codice. Puoi anche vedere le righe in cui l'autore commenta "se vogliamo applicare uno stile speciale al punto di partenza, dovremmo farlo qui" . Il problema è: non so come applicare uno stile in questa impostazione e non riesco a trovare alcun esempio usando il controllo DrawFeatures in questo modo.
Come posso fare in modo che il punto iniziale usi uno stile diverso rispetto al punto finale usando questo controllo DrawFeatures?
DrawPoints = OpenLayers.Class(OpenLayers.Control.DrawFeature, {
// this control is active by default
autoActivate: true,
initialize: function(layer, options) {
// only points can be drawn
var handler = OpenLayers.Handler.Point;
OpenLayers.Control.DrawFeature.prototype.initialize.apply(
this, [layer, handler, options]
);
},
drawFeature: function(geometry) {
OpenLayers.Control.DrawFeature.prototype.drawFeature.apply(
this, arguments
);
if (this.layer.features.length == 1) {
// we just draw the startpoint
// note: if we want to apply a special style to the
// start point we should do this here
} else if (this.layer.features.length == 2) {
// we just draw the finalpoint
// note: if we want to apply a special style to the
// final point we should do this here
// we have all what we need; we can deactivate ourself.
this.deactivate();
}
}
});