ฉันติดตามบทเรียนนี้แล้ว: http://workshop.pgrouting.org/chapters/geoext_client.html#select-the-start-and-final-destination
มันมีการควบคุม Openlayers.Control.DrawFeatures ที่กำหนดไว้ในตัวอย่างรหัสต่อไปนี้ นอกจากนี้คุณยังสามารถมองเห็นเส้นที่ความคิดเห็นของผู้เขียน"ถ้าเราต้องการที่จะใช้รูปแบบพิเศษไปยังจุดเริ่มต้นที่เราควรจะทำอย่างไรที่นี่" ปัญหาคือ: ฉันไม่รู้วิธีใช้สไตล์ในการตั้งค่านี้และไม่พบตัวอย่างใด ๆ โดยใช้การควบคุม DrawFeatures ด้วยวิธีนี้
ฉันจะให้จุดเริ่มต้นใช้สไตล์ที่แตกต่างจากจุดสิ้นสุดโดยใช้ตัวควบคุม 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();
}
}
});