private void btnGeoCodifica_Click(object sender, EventArgs e) { DireccionPunto dp = _geocodificador.GetCoordenadas(txtDireccion.Text); _dp = new DireccionPunto(); _flagReferenciando = true; if (dp != null) { _dp.key = dp.Direccion; _dp.Direccion = dp.Direccion; _dp.Latitud = dp.Latitud; _dp.Longitud = dp.Longitud; ((GeocodificadorBase)_geocodificador).utm30Ntransformacion(dp); _dp.X = dp.X; _dp.Y = dp.Y; _dp.Pais = dp.Pais; _dp.Municipio = dp.Municipio; _dp.NivelRegional2 = dp.NivelRegional2; _dp.NivelRegional1 = dp.NivelRegional1; txtLat.Text = Convert.ToString(_dp.Latitud); txtLon.Text = Convert.ToString(_dp.Longitud); txtX.Text = Convert.ToString(_dp.X); txtY.Text = Convert.ToString(_dp.Y); labPais.Text = dp.Pais; labProvincia.Text = dp.NivelRegional2; labRegion.Text = dp.NivelRegional1; labMunicipio.Text = dp.Municipio; _dp.IsGeocodificado = true; _dp.GeoreferenciadorDeno = _geocodificador.Deno; labGeo.Text = _dp.GeoreferenciadorDeno; } _flagReferenciando = false; }
/// <summary> /// Aunque List<RegistroModel> es una variable global, en el próximo incremento de geoToMap, el /// proceso de georreferenciación se desagregará. /// </summary> /// <param name="codificador"></param> /// <param name="direcciones"></param> private void ProcesoLoteGeoreferenciacion(IGeocodificador codificador, List <RegistroModel> direcciones) { try { BeginInvoke(new DlgMensaje(escribeConsolaNegro), new object[] { String.Format("Se han leído {0} direcciones", direcciones.Count.ToString(CultureInfo.InvariantCulture)) }); int i = 0; items.Clear(); BeginInvoke(new DlgVoid(() => listView1.Items.Clear())); foreach (RegistroModel registro in direcciones) { if (!String.IsNullOrEmpty(registro.Direccion)) { int i1 = i; BeginInvoke( new DlgVoid( () => progressBar1.Value = (int)(((double)(i1 + 1) / (double)direcciones.Count) * 100))); i++; DireccionPunto dp = codificador.GetCoordenadas(registro.Direccion); if (dp != null) { dp.key = registro.Id; Invoke(new DlgVoid(() => items.Add(dp.key, dp))); //TO DO Posible efecto secundario EVITAR!!! registro.Id = dp.key; } } } } catch (Exception ex) { } }