From 3885fa83b78dbfaf3b726a0849b4c42bf3aae877 Mon Sep 17 00:00:00 2001 From: Gerardo Date: Sun, 14 Nov 2021 01:40:54 +0100 Subject: [PATCH] Configuraciones y pruebas --- Helper/HelperGdb.cs | 30 ++-- Model/OliviaGlob.cs.bak | 370 ++++++++++++++++++++++++++++++++++++++++ Services/ConfigServ.cs | 4 +- 3 files changed, 392 insertions(+), 12 deletions(-) create mode 100644 Model/OliviaGlob.cs.bak diff --git a/Helper/HelperGdb.cs b/Helper/HelperGdb.cs index 837b200..1555382 100644 --- a/Helper/HelperGdb.cs +++ b/Helper/HelperGdb.cs @@ -608,6 +608,8 @@ namespace OliviaAddInPro.Helper string dirPath; string fclassName = System.IO.Path.GetFileName(pathLayerIn); IReadOnlyList parameters = null; + IReadOnlyList parameters2 = null; + FeatureClass featureClass = null; var fin = ArcGIS.Desktop.Framework.Threading.Tasks.QueuedTask.Run((Func)(() => { @@ -640,30 +642,39 @@ namespace OliviaAddInPro.Helper //Selection selFeatures = featureClass.Select(filter, SelectionType.ObjectID, SelectionOption.Normal); // make a value array of strings to be passed to ExecuteToolAsync - parameters = Geoprocessing.MakeValueArray(pathLayerIn, outpath, nameShp); + parameters = Geoprocessing.MakeValueArray(pathLayerIn, outpath);//, nameShp); + var aux = pathLayerIn.Split('\\'); + parameters2 = Geoprocessing.MakeValueArray(outpath + aux[aux.Length - 1]+".shp", outpath, nameShp); + } catch { OutStr = "Ha ocurrido un error al convertir a shape"; return false; } - return true; + return true; })); - if(!fin.Result || parameters==null) + fin.Wait(); + if(!fin.Result)// || parameters==null) { OutStr = "Ha ocurrido un error al convertir a shape"; return false; } - - /*ObservableCollection parameters = new ObservableCollection(); - parameters.Add(pathLayerIn); - parameters.Add(outpath); - parameters.Add(nameShp);*/ + + var progSrc = new CancelableProgressorSource(progrDialog); + + // execute the tool IGPResult gpResult = Geoprocessing.ExecuteToolAsync("FeatureClassToShapefile_conversion", parameters, - null, new CancelableProgressorSource(progrDialog).Progressor, GPExecuteToolFlags.GPThread).Result; + null, progSrc.Progressor, GPExecuteToolFlags.GPThread).Result; + //renombrar shp + //param2.Add(nameShp); + IGPResult gpResult2 = Geoprocessing.ExecuteToolAsync("FeatureClassToFeatureClass", parameters2, + null, progSrc.Progressor, GPExecuteToolFlags.GPThread).Result; + + Free(featureClass); if (string.IsNullOrEmpty(gpResult.ReturnValue)) { @@ -675,7 +686,6 @@ namespace OliviaAddInPro.Helper OutStr = "Ok: " + gpResult.ReturnValue; return true; } - } } diff --git a/Model/OliviaGlob.cs.bak b/Model/OliviaGlob.cs.bak new file mode 100644 index 0000000..46f2a71 --- /dev/null +++ b/Model/OliviaGlob.cs.bak @@ -0,0 +1,370 @@ +using ArcGIS.Desktop.Internal.Core; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using OliviaAddInPro.Services; +using ArcGIS.Core.Geometry; +using ArcGIS.Desktop.Framework.Threading.Tasks; + +namespace OliviaAddInPro.Model +{ + [Flags] + /** + * 2 primeros bit indican si es nada (0), limp (1), reco(2), u otros (3) + * 3er bit indica si es config + * 4º bit indica ejec + */ + public enum TiposEjecucion + { + Ninguno = 0, + Limp=1, + Reco=2, + Config = 4, //está configurando por primera vez + Ejec=8,//está ejecutando por primera vez + Config2=16,//está configurando después de haber planificado ya al menos una primera vez + Ejec2=32,//está ejecutando después de haber planificado ya al menos una primera vez + Maqueta =64, + Conifg=128, + } + static class OliviaGlob + { + /** + * Paths de la configuración + */ + public struct Paths + { + public static string PathWork; //>>>>>> origin/Elena/export + + Paths.PathGdbGen = c.PathGdbGen; + Paths.PathGdbNw = c.red_carreteras; + Paths.PathSimbVSM = c.PathSimbVSM; + Paths.PathSimbESRI = c.PathSimbESRI; + //puerto = c.puerto; + //buff_export = c.buffer_export; + + /////////////////////////////////////// + //Capas, consultas y filtros GENERALES + /*Capas.ftclass_ejes = c.eje_via; + Capas.ftclass_zonas = "SubNiveles"; + Capas.ftclass_restri = "TomTom_Q4_2015___rs"; + Capas.ftclass_muni = c.municipios;*/ + + /////////////////////////////////////// + //Capas, consultas, atributos y filtros de LIMPIEZA + LimpiezaDef.Capas.ftclass_niveles = "a2_Niveles_Limpieza"; + LimpiezaDef.Capas.ftclass_cont = "a_Contendores"; + LimpiezaDef.Capas.ftclass_mobi = "a_Mobiliario"; + LimpiezaDef.Capas.ftclass_limp_mec = "b_LimpMececanica"; + LimpiezaDef.Capas.ftclass_instala = "c_Instalaciones"; + + LimpiezaDef.Campos.consulta_entidad = c.cons_tip_ent; + LimpiezaDef.Campos.consulta_mecan = c.cons_mecaniz; + LimpiezaDef.Campos.consulta_observ = c.cons_obser; + LimpiezaDef.Campos.consulta_anch_tip = c.cons_anch_tip; + LimpiezaDef.Campos.consulta_tipolo = c.cons_tipolo; + LimpiezaDef.Campos.consulta_sector = c.consulta_sector; + LimpiezaDef.Campos.consulta_secuen = c.consulta_secuen; + + LimpiezaDef.Atributos.atr_esca = c.atr_esca; + LimpiezaDef.Atributos.atr_fuent = c.atr_fuent; + LimpiezaDef.Atributos.atr_infan = c.atr_infan; + LimpiezaDef.Atributos.atr_pape = c.atr_pape; + LimpiezaDef.Atributos.atr_paso_niv = c.atr_paso_niv; + LimpiezaDef.Atributos.atr_pipi = c.atr_pipi; + LimpiezaDef.Atributos.atr_sane = c.atr_sane; + LimpiezaDef.Atributos.atr_acera = c.atr_acera; + LimpiezaDef.Atributos.atr_aparc = c.atr_aparc; + LimpiezaDef.Atributos.atr_bord = c.atr_bord; + LimpiezaDef.Atributos.atr_hoja = c.atr_hoja; + LimpiezaDef.Atributos.atr_peat = c.atr_peat; + LimpiezaDef.Atributos.atr_terri = c.atr_terri; + LimpiezaDef.Atributos.atr_ocio = c.atr_ocio; + LimpiezaDef.Atributos.atr_org_ofi = c.atr_org_ofi; + LimpiezaDef.Atributos.atr_parq = c.atr_parq; + LimpiezaDef.Atributos.atr_park = c.atr_park; + LimpiezaDef.Atributos.atr_play = c.atr_play; + LimpiezaDef.Atributos.atr_polid = c.atr_polid; + LimpiezaDef.Atributos.atr_turis = c.atr_turis; + LimpiezaDef.Atributos.atr_solar = c.atr_solar; + LimpiezaDef.Atributos.atr_suelo = c.atr_suelo; + LimpiezaDef.Atributos.atr_ap_lin = c.atr_ap_lin; + LimpiezaDef.Atributos.atr_ap_bat = c.atr_ap_bat; + + //para el grupo PARAMETROS de LIMPIEZA + LimpiezaDef.Parametros.t_ttoM = c.t_tratamiento_max; + LimpiezaDef.Parametros.t_ttom = c.t_tratamiento_min; + LimpiezaDef.Parametros.v_despM = c.v_desplaz_max; + LimpiezaDef.Parametros.v_despm = c.v_desplaz_min; + LimpiezaDef.Parametros.t_cardescM = c.t_carga_desc_max; + LimpiezaDef.Parametros.t_cardescm = c.t_carga_desc_min; + LimpiezaDef.Parametros.t_cardesc = c.t_carga_desc; + LimpiezaDef.Parametros.t_despM = c.t_carga_desc_max; + LimpiezaDef.Parametros.t_despm = c.t_carga_desc_min; + LimpiezaDef.Parametros.t_desp = c.t_desplaz; + LimpiezaDef.Parametros.t_convM = c.t_convenio_max; + LimpiezaDef.Parametros.t_convm = c.t_convenio_min; + LimpiezaDef.Parametros.t_conv = c.t_convenio; + LimpiezaDef.Parametros.t_descansoM = c.t_descanso_max; + LimpiezaDef.Parametros.t_descansom = c.t_descanso_min; + LimpiezaDef.Parametros.t_descanso = c.t_descanso; + LimpiezaDef.Parametros.h_inicio = c.hora_inicio; + LimpiezaDef.Parametros.ancho_viaM = c.ancho_via_max; + LimpiezaDef.Parametros.ancho_viam = c.ancho_via_min; + LimpiezaDef.Parametros.ancho_via = c.ancho_via; + LimpiezaDef.Parametros.ttoBarMan = c.t_tratamiento_BarMan; + LimpiezaDef.Parametros.ttoBarManMant = c.t_tratamiento_BarManMant; + LimpiezaDef.Parametros.ttoBarMMot = c.t_tratamiento_BarMMot; + LimpiezaDef.Parametros.ttoBarMC = c.t_tratamiento_BarMC; + LimpiezaDef.Parametros.ttoBarMAP = c.t_tratamiento_BarMAP; + LimpiezaDef.Parametros.ttoBarMix = c.t_tratamiento_BarMix; + LimpiezaDef.Parametros.ttoBalMan = c.t_tratamiento_BalMan; + LimpiezaDef.Parametros.ttoBalMC = c.t_tratamiento_BalMC; + LimpiezaDef.Parametros.ttoBalMAP = c.t_tratamiento_BalMAP; + LimpiezaDef.Parametros.ttoBalMix = c.t_tratamiento_BalMix; + LimpiezaDef.Parametros.ttoBL = c.t_tratamiento_BL; + LimpiezaDef.Parametros.ttoCH = c.t_tratamiento_CH; + LimpiezaDef.Parametros.ttoVPap = c.t_tratamiento_VPap; + LimpiezaDef.Parametros.ttoLPap = c.t_tratamiento_LPap; + LimpiezaDef.Parametros.ttoLC = c.t_tratamiento_LC; + LimpiezaDef.Parametros.ttoLZI = c.t_tratamiento_LZI; + LimpiezaDef.Parametros.ttoLPip = c.t_tratamiento_LPip; + LimpiezaDef.Parametros.ttoLS = c.t_tratamiento_LS; + LimpiezaDef.Parametros.vdespBarMan = c.v_desp_BarMan; + LimpiezaDef.Parametros.vdespBarManMant = c.v_desp_BarManMant; + LimpiezaDef.Parametros.vdespBarMMot = c.v_desp_BarMMot; + LimpiezaDef.Parametros.vdespBarMC = c.v_desp_BarMC; + LimpiezaDef.Parametros.vdespBarMAP = c.v_desp_BarMAP; + LimpiezaDef.Parametros.vdespBarMix = c.v_desp_BarMix; + LimpiezaDef.Parametros.vdespBalMan = c.v_desp_BalMan; + LimpiezaDef.Parametros.vdespBalMC = c.v_desp_BalMC; + LimpiezaDef.Parametros.vdespBalMAP = c.v_desp_BalMAP; + LimpiezaDef.Parametros.vdespBalMix = c.v_desp_BalMix; + LimpiezaDef.Parametros.vdespBL = c.v_desp_BL; + LimpiezaDef.Parametros.vdespCH = c.v_desp_CH; + LimpiezaDef.Parametros.vdespVPap = c.v_desp_VPap; + LimpiezaDef.Parametros.vdespLPap = c.v_desp_LPap; + LimpiezaDef.Parametros.vdespLC = c.v_desp_LC; + LimpiezaDef.Parametros.vdespLZI = c.v_desp_LZI; + LimpiezaDef.Parametros.vdespLPip = c.v_desp_LPip; + LimpiezaDef.Parametros.vdespLS = c.v_desp_LS; + LimpiezaDef.Parametros.umbral_reco = 80; + + LimpiezaDef.OtrosParam.giro_max = c.Giro_max_vehiculo; + LimpiezaDef.OtrosParam.anch_peat = c.Ancho_peat_def; + LimpiezaDef.OtrosParam.anch_ace = c.Ancho_acera_def; + LimpiezaDef.OtrosParam.anch_aplin = c.Ancho_ap_lin_def; + LimpiezaDef.OtrosParam.anch_apbat = c.Ancho_ap_bat_def; + LimpiezaDef.OtrosParam.anch_bordlib = c.Ancho_bord_lib_def; + LimpiezaDef.OtrosParam.desv_max = c.Desv_max; + LimpiezaDef.OtrosParam.desv_max_abs = c.Desv_max_abs; + + /////////////////////////////////////// + //Capas, consultas, atributos y filtros de RECOGIDA + /* + RecogidaDef.campos_def.cons_id = RecogidaDef.campos.cons_id = "OBJECTID"; + RecogidaDef.campos_def.cons_nomrec = RecogidaDef.campos.cons_nomrec = "NOMB_TIP_REC"; + RecogidaDef.campos_def.cons_lateral = RecogidaDef.campos.cons_lateral = "LATERALIDAD"; + RecogidaDef.campos_def.cons_fracc = RecogidaDef.campos.cons_fracc = "FRACCION"; + RecogidaDef.campos_def.cons_capac = RecogidaDef.campos.cons_capac = "CAPACIDAD"; + RecogidaDef.campos_def.cons_uds = RecogidaDef.campos.cons_uds = "UNIDADES"; + RecogidaDef.campos_def.cons_kgrec = RecogidaDef.campos.cons_kgrec = "KGRECO"; + RecogidaDef.kgrec_cont = RecogidaDef.kgrec_cont = 200; + + //Rellena los tipos de fracción + RecogidaDef.tipos_fracc_str[(int)RecogidaDef.TiposFracción.Organica] = "Organica"; + RecogidaDef.tipos_fracc_str[(int)RecogidaDef.TiposFracción.Resto] = "Resto"; + RecogidaDef.tipos_fracc_str[(int)RecogidaDef.TiposFracción.Envases] = "Envases"; + RecogidaDef.tipos_fracc_str[(int)RecogidaDef.TiposFracción.Papel] = "PapelCarton"; + RecogidaDef.tipos_fracc_str[(int)RecogidaDef.TiposFracción.Vidrio] = "Vidrio"; + //Rellena los tipos de carga + RecogidaDef.tipos_carg_str[(int)RecogidaDef.TiposCarga.Trasera] = "Carga Trasera"; + RecogidaDef.tipos_carg_str[(int)RecogidaDef.TiposCarga.Lateral] = "Carga Lateral"; + RecogidaDef.tipos_carg_str[(int)RecogidaDef.TiposCarga.Superior] = "Carga Superior"; + RecogidaDef.tipos_carg_str[(int)RecogidaDef.TiposCarga.Bilateral] = "Carga Bilateral"; + RecogidaDef.tipos_carg_str[(int)RecogidaDef.TiposCarga.BolseoPtaPta] = "Bolseo"; + RecogidaDef.tipos_carg_str[(int)RecogidaDef.TiposCarga.Lavado] = "Lavado de cont"; + + RecogidaDef.Parametros.t_vaciM = 40000; + RecogidaDef.Parametros.t_vacim = 0; + RecogidaDef.Parametros.t_llegsalM = 40000; + RecogidaDef.Parametros.t_llegsalm = 0; + RecogidaDef.Parametros.t_llegsal = 5; + RecogidaDef.Parametros.t_descM = 40000; + RecogidaDef.Parametros.t_descm = 0; + RecogidaDef.Parametros.t_desc = 40; + RecogidaDef.Parametros.t_convM = 40000; + RecogidaDef.Parametros.t_convm = 0; + RecogidaDef.Parametros.t_conv = 60 * 8; + RecogidaDef.Parametros.t_descansoM = 40000; + RecogidaDef.Parametros.t_descansom = 0; + RecogidaDef.Parametros.t_descanso = 30; + RecogidaDef.Parametros.h_inicio = 420; + RecogidaDef.Parametros.dens_vehi_org = 500; + RecogidaDef.Parametros.dens_vehi_res = 500; + RecogidaDef.Parametros.dens_vehi_env = 120; + RecogidaDef.Parametros.dens_vehi_pap = 250; + RecogidaDef.Parametros.dens_vehi_vid = 350; + RecogidaDef.Parametros.dens_vehi_otr = 100; + RecogidaDef.Parametros.dens_cont_org = 150; + RecogidaDef.Parametros.dens_cont_res = 100; + RecogidaDef.Parametros.dens_cont_env = 28; + RecogidaDef.Parametros.dens_cont_pap = 90; + RecogidaDef.Parametros.dens_cont_vid = 250; + RecogidaDef.Parametros.dens_cont_otr = 100; + RecogidaDef.Parametros.anch_vehi_3 = 2.4; + RecogidaDef.Parametros.anch_vehi_2 = 2.2; + RecogidaDef.Parametros.anch_vehi_s = 2; + RecogidaDef.Parametros.rad_giro_3 = 175; + RecogidaDef.Parametros.rad_giro_2 = 175; + RecogidaDef.Parametros.rad_giro_s = 175; + RecogidaDef.Parametros.t_vaci_tra = 30; + RecogidaDef.Parametros.t_vaci_lat = 90; + RecogidaDef.Parametros.t_vaci_sup = 180; + RecogidaDef.Parametros.t_vaci_bi = 100; + RecogidaDef.Parametros.t_vaci_bol = 5; + RecogidaDef.Parametros.t_vaci_lav = 60; + RecogidaDef.Parametros.t_vaci_otr = 60; + RecogidaDef.Parametros.kgmaxM = 20000; + RecogidaDef.Parametros.kgmaxm = 0; + RecogidaDef.Parametros.carga_maxM = 100; + RecogidaDef.Parametros.carga_maxm = 50; + + //Atributos LATERALIDAD + RecogidaDef.tipos_lateralidad[(int)RecogidaDef.Lateralidad.Ambos] = "Ambos"; + RecogidaDef.tipos_lateralidad[(int)RecogidaDef.Lateralidad.Dcha] = "Derecha"; + RecogidaDef.tipos_lateralidad[(int)RecogidaDef.Lateralidad.Izqda] = "Izquierda"; + + //Campos de SENSORES + RecogidaDef.campos_def.cons_id_sens = RecogidaDef.campos.cons_id_sens = "OBJECTID"; + RecogidaDef.campos_def.cons_url_sens = RecogidaDef.campos.cons_url_sens = "http://localiza.info/Utilidades/APIManager.aspx"; + RecogidaDef.campos_def.cons_fecha_sens = RecogidaDef.campos.cons_fecha_sens = "2000-01-01T00:00:00"; + RecogidaDef.campos_def.cons_fechaf_sens = RecogidaDef.campos.cons_fechaf_sens = "2050-01-01T00:00:00"; + + //Campos de CSV + RecogidaDef.campos_def.cons_id_csv = RecogidaDef.campos.cons_id_csv = "Nº"; + RecogidaDef.campos_def.cons_llen_csv = RecogidaDef.campos.cons_llen_csv = "Lectura"; + RecogidaDef.campos_def.cons_fecha_csv = RecogidaDef.campos.cons_fecha_csv = "Fecha"; + RecogidaDef.campos_def.cons_fechai_csv = RecogidaDef.campos.cons_fechai_csv = "01/01/2000 0:01"; + RecogidaDef.campos_def.cons_fechaf_csv = RecogidaDef.campos.cons_fechaf_csv = "01/01/2049 0:00"; + + //Campos de la red navegable que se leen + ComunDef.CamposNW.cons_onew = "ONEWAY"; + ComunDef.CamposNW.cons_kph = "KPH"; + ComunDef.CamposNW.cons_fow = "FOW"; + ComunDef.CamposNW.cons_name = "NAME"; + //Atributos de la red navegable que se leen + ComunDef.AtributosNW.atr_TF = "TF"; + ComunDef.AtributosNW.atr_FT = "FT"; + ComunDef.AtributosNW.atr_N = "N"; + ComunDef.AtributosNW.atr_pedes = "14"; + + //Nombre de simbolos VSM + RecogidaDef.rellena_simbrec_vsm();*/ + } + } +} diff --git a/Services/ConfigServ.cs b/Services/ConfigServ.cs index 09d88ac..a74c2ec 100644 --- a/Services/ConfigServ.cs +++ b/Services/ConfigServ.cs @@ -66,7 +66,7 @@ namespace OliviaAddInPro.Services { if (DirWork == null || DirWork[0] == 0) return path; - return path.Replace(nameDirWork, DirWork); + return path.Replace( DirWork, nameDirWork); } /** @@ -76,7 +76,7 @@ namespace OliviaAddInPro.Services { if (DirWork == null || DirWork[0] == 0) return path; - return path.Replace(DirWork, nameDirWork); + return path.Replace( nameDirWork, DirWork); } private string GetPathConfig() {