Ich verwende Openlayers 3, um eine Webanwendung zu erstellen, mit der Benutzer LineString-Funktionen in der Karte zeichnen können. Das ist der Code:
var raster = new ol.layer.Tile({
source: new ol.source.MapQuest({ layer: 'sat' })
});
var source = new ol.source.Vector();
var vector = new ol.layer.Vector({
name: 'my_vectorlayer',
source: source,
style: new ol.style.Style({
stroke: new ol.style.Stroke({
color: '#ffcc33',
width: 5
})
})
});
var map = new ol.Map({
layers: [raster, vector],
target: document.getElementById('map'),
view: new ol.View2D({
center: [-11000000, 4600000],
zoom: 4
})
});
var draw;
function addInteraction() {
map.removeInteraction(singleClick);
draw = new ol.interaction.Draw({
source: source,
type: ("LineString")
});
map.addInteraction(draw);
}
Mit dem vorherigen Code kann ich Linien in die Karte einfügen. Die gezeichneten Linien werden der vector
Ebene hinzugefügt . Ich werde nicht, wenn der Benutzer eine der Linien auswählt, die er zeichnet, um sie zu entfernen. Dies ist der Code zur Auswahl der Funktion:
var singleClick = new ol.interaction.Select();
function addSelect() {
map.removeInteraction(draw);
map.addInteraction(singleClick);
}
und es ist Arbeit sehr wird,
Ich möchte nur, dass der Benutzer den ausgewählten LineString entfernen kann ...