From 83d5231ab4ad9179a2fbce60eded49159f271241 Mon Sep 17 00:00:00 2001 From: Elena Date: Fri, 1 Jul 2022 14:15:09 +0200 Subject: [PATCH] Pruebas y arreglos Recogida. Funciona ciclo completo. --- Helper/HelperGdb.cs | 19 +++++++++++----- Services/EjecServ.cs | 2 +- Services/FinProcServ.cs | 25 ++++++--------------- Services/LanzaSrv/LanzaRecoSrv.cs | 10 ++++----- View/Recogida/PaneRecogida.xaml | 4 ++-- ViewModel/Recogida/PaneRecogidaViewModel.cs | 9 +++++++- 6 files changed, 37 insertions(+), 32 deletions(-) diff --git a/Helper/HelperGdb.cs b/Helper/HelperGdb.cs index 3cb8a6b..94676b4 100644 --- a/Helper/HelperGdb.cs +++ b/Helper/HelperGdb.cs @@ -1594,7 +1594,7 @@ namespace OliviaAddInPro.Helper /**Amplía la geometría para que incluya el punto */ - public static Respuesta AddPtoInGeom(Coordinate2D pto, ArcGIS.Core.Geometry.Geometry geom) + public static Respuesta AddPtoInGeom(Coordinate2D pto, ArcGIS.Core.Geometry.Geometry geom, int buff=100) { Respuesta resp = new Respuesta(); double buffer = 0;//m de distancia desde la instalación @@ -1602,9 +1602,9 @@ namespace OliviaAddInPro.Helper ArcGIS.Core.Geometry.Geometry geom_pto, geom_sal; try { - do + /*do { - buffer += 100; + buffer += buff; geom_pto = GeometryEngine.Instance.Buffer(pto.ToMapPoint(), buffer); if (geom_pto == null || geom_pto.IsEmpty) { @@ -1627,10 +1627,19 @@ namespace OliviaAddInPro.Helper resp.Error.Add("Error al hacer envolvente en unir punto al polígono"); return resp; } - }*/ + } + } + while (repite);*/ + buffer = buff; + geom_pto = GeometryEngine.Instance.Buffer(pto.ToMapPoint(), buffer); + if (geom_pto == null || geom_pto.IsEmpty) + { + resp.Value = null; + resp.Error.Add("Error al bufferear punto para incluirlo en polígono"); + return resp; } - while (repite); geom_sal = GeometryEngine.Instance.Union(geom_pto, geom); + geom_sal = GeometryEngine.Instance.ConvexHull(geom_sal); if (geom_sal == null || geom_sal.IsEmpty) { resp.Value = null; diff --git a/Services/EjecServ.cs b/Services/EjecServ.cs index 3e0d9b8..a201535 100644 --- a/Services/EjecServ.cs +++ b/Services/EjecServ.cs @@ -247,7 +247,7 @@ namespace OliviaAddInPro.Services else { //amplía la geom - Respuesta respGeom = HelperGdb.AddPtoInGeom(coords[i], geom_export); + Respuesta respGeom = HelperGdb.AddPtoInGeom(coords[i], geom_export, com.BuffExport); if (respGeom.Value == null) { //ha ido mal diff --git a/Services/FinProcServ.cs b/Services/FinProcServ.cs index b0990e3..df55d46 100644 --- a/Services/FinProcServ.cs +++ b/Services/FinProcServ.cs @@ -84,11 +84,9 @@ namespace OliviaAddInPro.Services } if (mal) { - //reinicia flags - if (OliviaGlob.IsLimp()) - OliviaGlob.SetFlagTipEjec(TiposEjecucion.Limp); - else if (OliviaGlob.IsReco()) - OliviaGlob.SetFlagTipEjec(TiposEjecucion.Reco); + //actualiza los flags + OliviaGlob.RemoveFlagTipEjec(TiposEjecucion.EjecPlanif); + OliviaGlob.RemoveFlagTipEjec(TiposEjecucion.EjecSecto); HelperGlobal.ponMsg(msg); OliviaGlob.progrDialog.Hide(); @@ -123,6 +121,8 @@ namespace OliviaAddInPro.Services { //actualiza la capa de la que tiene que leer ahora para planificar inst.CapaPlanif = resp2.Value; + //pone modo config2 + OliviaGlob.AddFlagTipEjec(TiposEjecucion.Config2); if (OliviaGlob.HasFlagTipEjec(TiposEjecucion.EjecPlanif)) //Ha terminado bien la planificación { //guarda csv @@ -137,21 +137,10 @@ namespace OliviaAddInPro.Services msg = msg_err + ": " + msg + ": " + ex.Message; mal = true; } - } - /*if (mal) - { - //reinicia flags - if (OliviaGlob.IsLimp()) - OliviaGlob.SetFlagTipEjec(TiposEjecucion.Limp); - else if (OliviaGlob.IsReco()) - OliviaGlob.SetFlagTipEjec(TiposEjecucion.Reco); - - }*/ + } //actualiza los flags OliviaGlob.RemoveFlagTipEjec(TiposEjecucion.EjecPlanif); - OliviaGlob.RemoveFlagTipEjec(TiposEjecucion.EjecSecto); - //pone modo config2 - OliviaGlob.AddFlagTipEjec(TiposEjecucion.Config2); + OliviaGlob.RemoveFlagTipEjec(TiposEjecucion.EjecSecto); /////////////////////////////////////////////////// HelperGlobal.ponMsg(msg); OliviaGlob.progrDialog.Hide(); diff --git a/Services/LanzaSrv/LanzaRecoSrv.cs b/Services/LanzaSrv/LanzaRecoSrv.cs index 312bc70..12bf793 100644 --- a/Services/LanzaSrv/LanzaRecoSrv.cs +++ b/Services/LanzaSrv/LanzaRecoSrv.cs @@ -85,11 +85,11 @@ namespace OliviaAddInPro.Services.LanzaSrv GeneralDef.EjecGeoParamSep + GeneralDef.GG_cooy + GeneralDef.EjecGeoParamIgual + reco.CoordsInstal.Y + " " +//coordenadas GeneralDef.EjecGeoParamSep + GeneralDef.GR_descx + GeneralDef.EjecGeoParamIgual + reco.CoordsPlanta.X + " " +//coordenadas GeneralDef.EjecGeoParamSep + GeneralDef.GR_descy + GeneralDef.EjecGeoParamIgual + reco.CoordsPlanta.Y + " " +//coordenadas - GeneralDef.EjecGeoParamSep + GeneralDef.GR_sens_id + GeneralDef.EjecGeoParamIgual + 0 + " " + - GeneralDef.EjecGeoParamSep + GeneralDef.GR_sens_url + GeneralDef.EjecGeoParamIgual + 0 + " " + - GeneralDef.EjecGeoParamSep + GeneralDef.GR_sens_fecha + GeneralDef.EjecGeoParamIgual + 0 + " " + - GeneralDef.EjecGeoParamSep + GeneralDef.GR_sens_fechaf + GeneralDef.EjecGeoParamIgual + 0 + " " + - GeneralDef.EjecGeoParamSep + GeneralDef.GR_sens_modo + GeneralDef.EjecGeoParamIgual + 0 + " " + + GeneralDef.EjecGeoParamSep + GeneralDef.GR_sens_id + GeneralDef.EjecGeoParamIgual + "0 " + + GeneralDef.EjecGeoParamSep + GeneralDef.GR_sens_url + GeneralDef.EjecGeoParamIgual + "0 " + + GeneralDef.EjecGeoParamSep + GeneralDef.GR_sens_fecha + GeneralDef.EjecGeoParamIgual + "0 " + + GeneralDef.EjecGeoParamSep + GeneralDef.GR_sens_fechaf + GeneralDef.EjecGeoParamIgual + "0 " + + GeneralDef.EjecGeoParamSep + GeneralDef.GR_sens_modo + GeneralDef.EjecGeoParamIgual + "0 " + GeneralDef.EjecGeoParamSep + GeneralDef.GG_ais + GeneralDef.EjecGeoParamIgual + (reco.IgnoAis?1:0) + " " + GeneralDef.EjecGeoParamSep + GeneralDef.GR_lateral + GeneralDef.EjecGeoParamIgual + reco.TipoLate + " "; diff --git a/View/Recogida/PaneRecogida.xaml b/View/Recogida/PaneRecogida.xaml index 9d54189..7db8695 100644 --- a/View/Recogida/PaneRecogida.xaml +++ b/View/Recogida/PaneRecogida.xaml @@ -69,8 +69,8 @@ -