i have text file list of gps coordinates. trying place marker on each of coordinates document. problem lengths of documents change , way have it, marker gets replaced every iteration. how add marker each lat/lon point?
here's relevant code:
private gmapoverlay gmapoverlay; private gmapmarker marker; gmap.mapprovider = gmap.net.mapproviders.googlemapprovider.instance; gmap.minzoom = 2; gmap.maxzoom = 25; gmap.zoom = 5; gmap.showcenter = false; gmap.dragbutton = mousebuttons.left; //setup map overlay displaying routes/points gmapoverlay = new gmapoverlay("path"); gmap.overlays.add(gmapoverlay); gmapoverlay.markers.clear(); gmapoverlay.routes.clear(); //gmarkergoogle marker = new gmarkergoogle(new pointlatlng(0, 0), gmarkergoogletype.green); marker = new gmarkergoogle(new pointlatlng(0, 0), gmarkergoogletype.green); marker.isvisible = false; marker.tooltipmode = markertooltipmode.onmouseover; marker.tooltiptext = "starting point"; gmapoverlay.markers.add(marker); private void btn_kmlfile_click(object sender, eventargs e) { dialogresult result = openfiledialog4.showdialog(); if (result == dialogresult.ok) { string filename = openfiledialog4.filename; string[] lines = system.io.file.readalllines(filename); foreach (string line in lines) { string[] data_array = line.split(','); double londecimal = convert.todouble(data_array[0]); double latdecimal = convert.todouble(data_array[1]); marker.position = new pointlatlng(latdecimal, londecimal); marker.isvisible = true; gmap.update(); } } } private void openfiledialog4_fileok(object sender, canceleventargs e) { openfiledialog openfiledialog4 = new openfiledialog(); }
the markers can go markers collection:
public readonly observablecollection<gmapmarker> markers; just add markers collection single marker.
edit
i assuming wpf client, there's no observable collection if using winforms. have tried add new marker collection original marker? in loop:
string[] data_array = line.split(','); double londecimal = convert.todouble(data_array[0]); double latdecimal = convert.todouble(data_array[1]); // add new 1 here var marker = new gmarkergoogle(new pointlatlng(latdecimal, londecimal), gmarkergoogletype.green); marker.isvisible = true; gmapoverlay.markers.add(marker);
Comments
Post a Comment