Dar sentido de circulacion a los ambitos

master
Gerardo 2024-04-26 08:23:42 +02:00
parent 07261ebb14
commit c69ac8a742
6 changed files with 37 additions and 14 deletions

View File

@ -1,12 +1,12 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<ArcGIS defaultAssembly="OliviaAddInPro.dll" defaultNamespace="OliviaAddInPro" xmlns="http://schemas.esri.com/DADF/Registry" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://schemas.esri.com/DADF/Registry file:///C:/Program%20Files/ArcGIS/Pro/bin/ArcGIS.Desktop.Framework.xsd"> <ArcGIS defaultAssembly="OliviaAddInPro.dll" defaultNamespace="OliviaAddInPro" xmlns="http://schemas.esri.com/DADF/Registry" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://schemas.esri.com/DADF/Registry file:///C:/Program%20Files/ArcGIS/Pro/bin/ArcGIS.Desktop.Framework.xsd">
<AddInInfo id="{10742570-cf59-42f2-bea2-2a38002a06ee}" version="4.1" desktopVersion="3.0.3.36057"> <AddInInfo id="{10742570-cf59-42f2-bea2-2a38002a06ee}" version="4.2.2.0" desktopVersion="3.0.3.36057">
<Name>OliviaAddInPro</Name> <Name>OliviaAddInPro</Name>
<Description>AddIn de Optimización de la Limpieza Viaria para ArcGIs Pro</Description> <Description>AddIn de Optimización de la Limpieza Viaria para ArcGIs Pro</Description>
<Image>Images\AddinDesktop32.png</Image> <Image>Images\AddinDesktop32.png</Image>
<Author>VSM</Author> <Author>VSM</Author>
<Company>VSM - Narvaling</Company> <Company>VSM - Narvaling</Company>
<Date>17/04/2024 12:00:00, 2024</Date> <Date>26/04/2024 12:00:00, 2024</Date>
<Subject>Framework</Subject> <Subject>Framework</Subject>
<!-- Note subject can be one or more of these topics: <!-- Note subject can be one or more of these topics:
Content, Framework, Editing, Geodatabase, Geometry, Geoprocessing, Layouts, Map Authoring, Map Exploration --> Content, Framework, Editing, Geodatabase, Geometry, Geoprocessing, Layouts, Map Authoring, Map Exploration -->

View File

@ -17,6 +17,7 @@ namespace OliviaAddInPro.Model
campo_prioridad = "0"; campo_prioridad = "0";
vehiculo_def_reco = -1; vehiculo_def_reco = -1;
vehiculo_def_lim = -1; vehiculo_def_lim = -1;
sentidoAmbitos = 0;
} }
public string nombre { get; set; } public string nombre { get; set; }
@ -25,6 +26,9 @@ namespace OliviaAddInPro.Model
public int vehiculo_def_reco { get; set; } public int vehiculo_def_reco { get; set; }
public int vehiculo_def_lim { get; set; } public int vehiculo_def_lim { get; set; }
//si 0 ambitos no tienen sentido 1 ambitos con sentido
public int sentidoAmbitos { get; set; }
} }
} }

View File

@ -165,6 +165,8 @@ namespace OliviaAddInPro.Model
public const string GG_topo = "reviTopo"; public const string GG_topo = "reviTopo";
public const string GG_conj = "reviConj"; public const string GG_conj = "reviConj";
public const string GG_angu = "reviAng"; public const string GG_angu = "reviAng";
public const string GG_senAmb = "sentAmb";
/** /**
* Define las propiedades de limpieza a enviar a oliviatasks * Define las propiedades de limpieza a enviar a oliviatasks
*/ */

View File

@ -19,7 +19,7 @@ namespace OliviaAddInPro.Services
public const string OlvRegKey = "SOFTWARE\\Narvaling\\Olivia_4_0"; public const string OlvRegKey = "SOFTWARE\\Narvaling\\Olivia_4_0";
public const string OlvRegName = "workdir"; public const string OlvRegName = "workdir";
public const string OlvConfigName = "olv.conf"; public const string OlvConfigName = "olv.conf";
public const string VersionConfiguracion = "1.2.0.0"; public const string VersionConfiguracion = "1.2.0.1";
public static ConfigServ Serv public static ConfigServ Serv
{ {
get { get {
@ -441,7 +441,9 @@ namespace OliviaAddInPro.Services
filtro_omitir = "", filtro_omitir = "",
campo_prioridad = "0", campo_prioridad = "0",
vehiculo_def_reco = -1, vehiculo_def_reco = -1,
vehiculo_def_lim = -1 vehiculo_def_lim = -1,
sentidoAmbitos = 0
}); });
c.ListaMV.Add(new OliviaConfMV() c.ListaMV.Add(new OliviaConfMV()
{ {
@ -449,7 +451,8 @@ namespace OliviaAddInPro.Services
filtro_omitir = "(FREEWAY <> 1 AND SLIPRD = 0)", filtro_omitir = "(FREEWAY <> 1 AND SLIPRD = 0)",
campo_prioridad = "0", campo_prioridad = "0",
vehiculo_def_reco = -1, vehiculo_def_reco = -1,
vehiculo_def_lim = 0 vehiculo_def_lim = 0,
sentidoAmbitos = 0
}); });
c.ListaMV.Add(new OliviaConfMV() c.ListaMV.Add(new OliviaConfMV()
@ -458,7 +461,8 @@ namespace OliviaAddInPro.Services
filtro_omitir = "(FREEWAY <> 1 AND SLIPRD = 0)", filtro_omitir = "(FREEWAY <> 1 AND SLIPRD = 0)",
campo_prioridad = "IIF($feature.PRIVATERD>1 || ($feature.FOW>13 && $feature.FOW<16) , -2 , 0)", campo_prioridad = "IIF($feature.PRIVATERD>1 || ($feature.FOW>13 && $feature.FOW<16) , -2 , 0)",
vehiculo_def_reco = 2, vehiculo_def_reco = 2,
vehiculo_def_lim = 1 vehiculo_def_lim = 1,
sentidoAmbitos=1,
}); });
c.ListaMV.Add(new OliviaConfMV() c.ListaMV.Add(new OliviaConfMV()
@ -467,7 +471,8 @@ namespace OliviaAddInPro.Services
filtro_omitir = "(ONEWAY <> 'N' AND FOW NOT IN (14, 15, 19))", filtro_omitir = "(ONEWAY <> 'N' AND FOW NOT IN (14, 15, 19))",
campo_prioridad = "IIF($feature.PRIVATERD>1 || $feature.RDCOND>1 , -2 , 0)", campo_prioridad = "IIF($feature.PRIVATERD>1 || $feature.RDCOND>1 , -2 , 0)",
vehiculo_def_reco = 1, vehiculo_def_reco = 1,
vehiculo_def_lim = -1 vehiculo_def_lim = -1,
sentidoAmbitos = 1
}); });
c.ListaMV.Add(new OliviaConfMV() c.ListaMV.Add(new OliviaConfMV()
@ -476,7 +481,8 @@ namespace OliviaAddInPro.Services
filtro_omitir = "(ONEWAY <> 'N' AND FOW NOT IN (14, 15, 19))", filtro_omitir = "(ONEWAY <> 'N' AND FOW NOT IN (14, 15, 19))",
campo_prioridad = "IIF($feature.RDCOND>1,-3, (IIF($feature.PRIVATERD>1 , -2 , 0)))", campo_prioridad = "IIF($feature.RDCOND>1,-3, (IIF($feature.PRIVATERD>1 , -2 , 0)))",
vehiculo_def_reco =0, vehiculo_def_reco =0,
vehiculo_def_lim = -1 vehiculo_def_lim = -1,
sentidoAmbitos = 1
}); });
return c; return c;

View File

@ -123,15 +123,20 @@ namespace OliviaAddInPro.Services
} }
else else
{ {
//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 if (OliviaGlob.HasFlagTipEjec(TiposEjecucion.EjecPlanif)) //Ha terminado bien la planificación
{ {
//guarda csv //guarda csv
GuardaCsv(inst,resp2.Value); GuardaCsv(inst,resp2.Value);
} }
else
{
//actualiza la capa de la que tiene que leer ahora para planificar
inst.CapaPlanif = resp2.Value;
//pone modo config2
OliviaGlob.AddFlagTipEjec(TiposEjecucion.Config2);
}
msg = Resource1.String_exito; msg = Resource1.String_exito;
} }

View File

@ -55,7 +55,12 @@ namespace OliviaAddInPro.Services.LanzaSrv
return false; return false;
if (limp.RespCirc) if (limp.RespCirc)
r = 1; //restricción de circulación {
if (ComunDef.configMV.sentidoAmbitos == 1)
r = 2; //restricción de circulación
else
r = 1;
}
if (modo == ModosEjec.Sectoriza) if (modo == ModosEjec.Sectoriza)
modo_str = GeneralDef.SockConf; modo_str = GeneralDef.SockConf;
@ -66,6 +71,7 @@ namespace OliviaAddInPro.Services.LanzaSrv
str = GeneralDef.EjecGeoParamSep + modo_str + " " + str = GeneralDef.EjecGeoParamSep + modo_str + " " +
GeneralDef.EjecGeoParamSep + GeneralDef.GL_tto + GeneralDef.EjecGeoParamIgual + limp.Ttto + " " + GeneralDef.EjecGeoParamSep + GeneralDef.GL_tto + GeneralDef.EjecGeoParamIgual + limp.Ttto + " " +
GeneralDef.EjecGeoParamSep + GeneralDef.GL_res + GeneralDef.EjecGeoParamIgual + r + " " + GeneralDef.EjecGeoParamSep + GeneralDef.GL_res + GeneralDef.EjecGeoParamIgual + r + " " +
GeneralDef.EjecGeoParamSep + GeneralDef.GG_senAmb + GeneralDef.EjecGeoParamIgual + ComunDef.configMV.sentidoAmbitos + " " +
GeneralDef.EjecGeoParamSep + GeneralDef.GL_uto + GeneralDef.EjecGeoParamIgual + (int)limp.UdsTTto + " " + GeneralDef.EjecGeoParamSep + GeneralDef.GL_uto + GeneralDef.EjecGeoParamIgual + (int)limp.UdsTTto + " " +
GeneralDef.EjecGeoParamSep + GeneralDef.GL_vdp + GeneralDef.EjecGeoParamIgual + limp.VDespl + " " + GeneralDef.EjecGeoParamSep + GeneralDef.GL_vdp + GeneralDef.EjecGeoParamIgual + limp.VDespl + " " +
GeneralDef.EjecGeoParamSep + GeneralDef.GG_tco + GeneralDef.EjecGeoParamIgual + limp.TConv + " " + GeneralDef.EjecGeoParamSep + GeneralDef.GG_tco + GeneralDef.EjecGeoParamIgual + limp.TConv + " " +