Compare commits

...

4 Commits

13 changed files with 1338 additions and 748 deletions

View File

@ -28,8 +28,8 @@ LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US
// //
VS_VERSION_INFO VERSIONINFO VS_VERSION_INFO VERSIONINFO
FILEVERSION 3,1,6,0 FILEVERSION 3,4,0,0
PRODUCTVERSION 3,1,6,0 PRODUCTVERSION 3,4,0,0
FILEFLAGSMASK 0x3fL FILEFLAGSMASK 0x3fL
#ifdef _DEBUG #ifdef _DEBUG
FILEFLAGS 0x1L FILEFLAGS 0x1L
@ -46,12 +46,12 @@ BEGIN
BEGIN BEGIN
VALUE "CompanyName", "VSM" VALUE "CompanyName", "VSM"
VALUE "FileDescription", "Librería de la aplicación Olivia" VALUE "FileDescription", "Librería de la aplicación Olivia"
VALUE "FileVersion", "3.1.6.0" VALUE "FileVersion", "3.4.0.0"
VALUE "InternalName", "Olivia.dll" VALUE "InternalName", "Olivia.dll"
VALUE "LegalCopyright", "OLIVIA (c) VSM 2020. All rights reserved." VALUE "LegalCopyright", "OLIVIA (c) VSM 2020. All rights reserved."
VALUE "OriginalFilename", "Olivia.dll" VALUE "OriginalFilename", "Olivia.dll"
VALUE "ProductName", "OLIVIA" VALUE "ProductName", "OLIVIA"
VALUE "ProductVersion", "3.1.6.0" VALUE "ProductVersion", "3.4.0.0"
END END
END END
BLOCK "VarFileInfo" BLOCK "VarFileInfo"

View File

@ -72,6 +72,7 @@ typedef struct PathsOlv{
char path_res_sec[MAX_PATH]; ///<Path del shp con el resultado de las entidades de los ámbitos de trabajo asociada la info de sector char path_res_sec[MAX_PATH]; ///<Path del shp con el resultado de las entidades de los ámbitos de trabajo asociada la info de sector
char path_data[MAX_PATH]; ///<Path del shp con datos a planificar, ya filtrados e intersecados con las zonas y niveles char path_data[MAX_PATH]; ///<Path del shp con datos a planificar, ya filtrados e intersecados con las zonas y niveles
char path_nw[MAX_PATH]; ///<Path del shp con la red navegable char path_nw[MAX_PATH]; ///<Path del shp con la red navegable
char path_nwc[MAX_PATH]; ///<Path del shp con conjunciones de la red navegable
char path_cfg_geo[MAX_PATH]; char path_cfg_geo[MAX_PATH];
char pfin; ///<Para marcar el final de la estructura char pfin; ///<Para marcar el final de la estructura
}PathsOlv; }PathsOlv;

View File

@ -1059,11 +1059,20 @@ double Colv_geom::ang_vect(double v1[2], double v2[2])
sqrt(v2[0] * v2[0] + v2[1] * v2[1]); sqrt(v2[0] * v2[0] + v2[1] * v2[1]);
if(res==0) if(res==0)
return 0; return 0;
res = (v1[0] * v2[0] + v1[1] * v2[1]) / res; double pscalar = (v1[0] * v2[0] + v1[1] * v2[1]);
res = pscalar / res;
if (res > 1) if (res > 1)
res = 1; res = 1;
if (res < -1) if (res < -1)
res = -1; res = -1;
/*if (pscalar < 0)
{
res = acos(res);
if (res < 0)
return OLV_PI + res;
else
return OLV_PI - res;
}*/
return acos(res); return acos(res);
} }
//************************************************************************************* //*************************************************************************************

View File

@ -19,6 +19,7 @@ Colv_limp::Colv_limp(COlivia *olv)
nod_plant=-1; nod_plant=-1;
this->olv = olv; this->olv = olv;
res_circ=OLV_RES_NO; res_circ=OLV_RES_NO;
res_angulos = OLV_RES_NO;
npts_ctrl = 3; npts_ctrl = 3;
uds_tto = OliviaDef::GeneralDef::OlvTipTtoNoDef; uds_tto = OliviaDef::GeneralDef::OlvTipTtoNoDef;
v_despl = 5; v_despl = 5;
@ -33,7 +34,7 @@ Colv_limp::Colv_limp(COlivia *olv)
memset(coor_instal,0,3*sizeof(double)); memset(coor_instal,0,3*sizeof(double));
thr_limp = new Colv_limp_thr(this); thr_limp = new Colv_limp_thr(this);
//cost_amb=NULL; //cost_amb=NULL;
n_nw=n_amb=0; n_nw=n_amb= n_nwc=0;
pp=-1; pp=-1;
tipo_ambit=-1; tipo_ambit=-1;
inww_amb=NULL; inww_amb=NULL;
@ -366,6 +367,11 @@ int Colv_limp::pon_config(char *config_)
if(!olv->dame_param(token, olv->paths.path_nw, sizeof(olv->paths.path_nw))) if(!olv->dame_param(token, olv->paths.path_nw, sizeof(olv->paths.path_nw)))
break; break;
} }
else if (strstr(token, OliviaDef::GeneralDef::GG_pnc))
{
if (!olv->dame_param(token, olv->paths.path_nwc, sizeof(olv->paths.path_nwc)))
break;
}
//los campos a leer de la dbf //los campos a leer de la dbf
else if(strstr(token,OliviaDef::GeneralDef::GAA_obser)) else if(strstr(token,OliviaDef::GeneralDef::GAA_obser))
{ {
@ -436,6 +442,25 @@ int Colv_limp::pon_config(char *config_)
if (!olv->dame_param(token, (int*)&revisa_topo)) if (!olv->dame_param(token, (int*)&revisa_topo))
break; break;
}
else if (strstr(token, OliviaDef::GeneralDef::GG_angu))
{
if (!olv->dame_param(token, &res_angulos))
break;
}
else if (strstr(token, OliviaDef::GeneralDef::GG_senAmb))
{
if (!olv->dame_param(token, &sentido_ambitos))
break;
//sentido_ambitos = 0;
}
else if (strstr(token, OliviaDef::GeneralDef::GG_conj))
{
if (!olv->dame_param(token, (int*)&revisa_conju))
break;
} }
//los campos a leer de la dbf de la red navegable //los campos a leer de la dbf de la red navegable
/*else if (strstr(token, OliviaDef::GeneralDef::GTC_onew)) /*else if (strstr(token, OliviaDef::GeneralDef::GTC_onew))
@ -730,10 +755,8 @@ BOOL Colv_limp::guarda_campos_ini(char *path)
} }
//************************************************************************************* //*************************************************************************************
#define NOMB_CAMP_CONJ_TO "T_JNCTID" #define NOMB_CAMP_ELEV_TO "_elev_t"
#define NOMB_CAMP_CONJ_FROM "F_JNCTID" #define NOMB_CAMP_ELEV_FROM "_elev_f"
#define NOMB_CAMP_ELEV_TO "T_ELEV"
#define NOMB_CAMP_ELEV_FROM "F_ELEV"
/** /**
* Rellena los nombres de los campos de la dbf * Rellena los nombres de los campos de la dbf
*/ */
@ -745,10 +768,11 @@ void Colv_limp::rellena_campos()
sprintf_s(camps.campo_velo,OLV_LIMP_MAX_CAMP,"_vel"); sprintf_s(camps.campo_velo,OLV_LIMP_MAX_CAMP,"_vel");
sprintf_s(camps.campo_fow,OLV_LIMP_MAX_CAMP,"_pea"); sprintf_s(camps.campo_fow,OLV_LIMP_MAX_CAMP,"_pea");
sprintf_s(camps.campo_name,OLV_LIMP_MAX_CAMP,"_dir"); sprintf_s(camps.campo_name,OLV_LIMP_MAX_CAMP,"_dir");
sprintf_s(camps.campo_name, OLV_LIMP_MAX_CAMP, "_evita"); sprintf_s(camps.campo_evi, OLV_LIMP_MAX_CAMP, "_evita");
sprintf_s(camps.campo_ang, OLV_LIMP_MAX_CAMP, "_angulo");
//TOM TOM ELEV //TOM TOM ELEV
sprintf_s(camps.campo_conj_to, OLV_LIMP_MAX_CAMP, NOMB_CAMP_CONJ_TO);
sprintf_s(camps.campo_conj_from, OLV_LIMP_MAX_CAMP, NOMB_CAMP_CONJ_FROM);
sprintf_s(camps.campo_elev_to, OLV_LIMP_MAX_CAMP, NOMB_CAMP_ELEV_TO); sprintf_s(camps.campo_elev_to, OLV_LIMP_MAX_CAMP, NOMB_CAMP_ELEV_TO);
sprintf_s(camps.campo_elev_from, OLV_LIMP_MAX_CAMP, NOMB_CAMP_ELEV_FROM); sprintf_s(camps.campo_elev_from, OLV_LIMP_MAX_CAMP, NOMB_CAMP_ELEV_FROM);
@ -912,6 +936,19 @@ void Colv_limp::dame_cost(double ltot, int ia, float *cost, float *cost2)
ancho=ancho_via; ancho=ancho_via;
*cost2=*cost=(float)(ltot*ancho*3600/t_tto); //en segundos *cost2=*cost=(float)(ltot*ancho*3600/t_tto); //en segundos
if (*cost2 > 10000)
{
*cost2 = *cost2;
}
if (sentido_ambitos == 1)
{
//revisa si el segmento es solo de entrada o solo de salida
if (iaso[ia].flgs & OLV_LIMP_FLG_CIRC_FT)
*cost2 = (float)MAYUSCULO;
else if (iaso[ia].flgs & OLV_LIMP_FLG_CIRC_TF)
*cost = (float)MAYUSCULO;
}
} }
else if(tipo_ambit==OLV_AMB_PUN) else if(tipo_ambit==OLV_AMB_PUN)
{ {
@ -927,6 +964,14 @@ void Colv_limp::dame_cost(double ltot, int ia, float *cost, float *cost2)
{ {
//coste fijo para los segmentos //coste fijo para los segmentos
*cost2 = *cost = 0;// (float)(ltot / (3 * OLV_KMH2MS));//OLV_LIMP_COST_SEGM *cost2 = *cost = 0;// (float)(ltot / (3 * OLV_KMH2MS));//OLV_LIMP_COST_SEGM
if (sentido_ambitos == 1)
{
//revisa si el segmento es solo de entrada o solo de salida
if (iaso[ia].flgs & OLV_LIMP_FLG_CIRC_FT)
*cost2 = (float)MAYUSCULO;
else if (iaso[ia].flgs & OLV_LIMP_FLG_CIRC_TF)
*cost = (float)MAYUSCULO;
}
} }
else if(iaso[ia].flgs & OLV_LIMP_FLG_PEAT_REP) else if(iaso[ia].flgs & OLV_LIMP_FLG_PEAT_REP)
{ {

View File

@ -35,13 +35,17 @@ public:
int pp; ///<Entero para pruebas int pp; ///<Entero para pruebas
int tipo_ambit; ///<Indica si los ámbitos son lineales o puntuales int tipo_ambit; ///<Indica si los ámbitos son lineales o puntuales
int n_amb; ///<Número de entidades de ámbitos, la cuenta empieza en 0 porque es la primera capa que se carga int n_amb; ///<Número de entidades de ámbitos, la cuenta empieza en 0 porque es la primera capa que se carga
int n_nw; ///<Número de entidades de la red navegable, la cuenta empieza en ini_nw porque no es la primera que se carga int n_nw; ///<Número de entidades de la red navegable, la cuenta empieza en n_amb porque no es la primera que se carga
int n_nwc; ///<Número de entidades de las conjunciones de la red navegable, la cuenta empieza en ini_nw porque no es la primera que se carga
int uds_tto; ///<Unidades de tratamiento: m/h, m2/h, min int uds_tto; ///<Unidades de tratamiento: m/h, m2/h, min
int npts_ctrl; ///<Número de puntos de control int npts_ctrl; ///<Número de puntos de control
int nsec; ///<Número de sectores int nsec; ///<Número de sectores
int nsec_act; ///<Número de sectores activos, siempre <= que nsec int nsec_act; ///<Número de sectores activos, siempre <= que nsec
int nsec_orig; ///<Número de sectores original, se usa por si se corrige el num de sectores porque haya alguno vacío int nsec_orig; ///<Número de sectores original, se usa por si se corrige el num de sectores porque haya alguno vacío
int res_circ; ///<Restricción de circulación int res_circ; ///<Restricción de circulación
int res_angulos; ///<Restricción de angulos
int sentido_ambitos; ///asigna sentido a los abmbitos si =1 si =0 no
int lateral; ///<Lateralidad, 0 o -1 ambos, 1 derecha, 2 izda int lateral; ///<Lateralidad, 0 o -1 ambos, 1 derecha, 2 izda
int tipo_shp_viaj; ///<Indica la forma en que se guardan los viajes según la enum TipoViajes int tipo_shp_viaj; ///<Indica la forma en que se guardan los viajes según la enum TipoViajes
int t_sal; ///<Tiempo de salida/llegada a la instalación, en segundos int t_sal; ///<Tiempo de salida/llegada a la instalación, en segundos
@ -52,6 +56,7 @@ public:
BOOL usa_secuen; BOOL usa_secuen;
BOOL revisa_elev; BOOL revisa_elev;
BOOL revisa_topo; BOOL revisa_topo;
BOOL revisa_conju;
double f_trafic; ///<Factor de reducción de la velocidad en calles por el tráfico en tanto por 1 double f_trafic; ///<Factor de reducción de la velocidad en calles por el tráfico en tanto por 1
double calc_nsec; ///<Indica si el número de sectores es calculado (almacena el coste del sector) o impuesto (0) double calc_nsec; ///<Indica si el número de sectores es calculado (almacena el coste del sector) o impuesto (0)
@ -88,9 +93,10 @@ public:
Info_inw_dmin *inww_amb; ///<Array de Namb que almacena la carretera más cercana al punto inicial y al final (Nambx2) Info_inw_dmin *inww_amb; ///<Array de Namb que almacena la carretera más cercana al punto inicial y al final (Nambx2)
///<del ámbito si es lineal o la más cercana si es puntual. La rellena el thread. ///<del ámbito si es lineal o la más cercana si es puntual. La rellena el thread.
CartoBase carto; CartoBase carto;
CartoBase cartoAux;
std::map<int,Info_aso2> iaso; ///<Map con mismos elementos que entidades la carto, con la información asociada std::map<int,Info_aso2> iaso; ///<Map con mismos elementos que entidades la carto, con la información asociada
std::vector<Info_tramos> *tramos; std::vector<Info_tramos> *tramos;
std::vector <Coste_modif> coste_modificado;
std::vector<Info_aso_nw_elev> iaso_elev; ///<Map con mismos elementos que la nw, con la info de elevación de los nodos std::vector<Info_aso_nw_elev> iaso_elev; ///<Map con mismos elementos que la nw, con la info de elevación de los nodos
double mima[N_COOR_MIMA]; ///<Coordenadas de las cuatro esquinas de la red double mima[N_COOR_MIMA]; ///<Coordenadas de las cuatro esquinas de la red
//************************************************************************************* //*************************************************************************************

View File

@ -236,6 +236,17 @@ typedef struct Info_aso_nw
double velo; //velocidad de la vía, en km/h double velo; //velocidad de la vía, en km/h
char *nomb; //nombre de la vía char *nomb; //nombre de la vía
}Info_aso_nw; }Info_aso_nw;
/**
* Nueva Estructura que contiene la información asociada de la nw
*/
typedef struct Coste_modif
{
float coste;
int i;
int j;
}Coste_modif;
/** /**
* Nueva Estructura que contiene la información asociada de las entidades de limpieza (aceras, bordillos, peatonales...) * Nueva Estructura que contiene la información asociada de las entidades de limpieza (aceras, bordillos, peatonales...)
*/ */
@ -262,9 +273,13 @@ typedef struct Info_aso_reco
typedef struct Info_aso2 typedef struct Info_aso2
{ {
INT64 flgs; //flags INT64 flgs; //flags
float velReal;
float angulo;
int inod[2]; //índice a los nodos ini y final de la entidad int inod[2]; //índice a los nodos ini y final de la entidad
int oid; //objetct id de la carto int oid; //objetct id de la carto
int refe2; //en los segmentos o replicadas, el ámbito original int refe2; //en los segmentos o replicadas, el ámbito original
int refe3; //en los ámbitos lineales, su segmento inicial, el que está en su punto 0.
//En los segmentos, la nw a la que está enganchado
int refe; //referencia en la carto a ese elemento int refe; //referencia en la carto a ese elemento
int iamb; //índice al ámbito que es int iamb; //índice al ámbito que es
union union
@ -283,10 +298,11 @@ typedef struct Info_aso2
{ {
flgs=0; flgs=0;
iamb=-1; iamb=-1;
inod[0]=inod[1]=oid=refe2=refe=-1; inod[0]=inod[1]=oid=refe2=refe=refe3=-1;
inf_r.id=inf_n.nomb=0; inf_r.id=inf_n.nomb=0;
inf_n.velo=inf_l.ancho=inf_r.kg=-1; inf_n.velo=inf_l.ancho=inf_r.kg=-1;
inf_r.uds=0; inf_r.uds=0;
angulo = 0;
}; };
void del() void del()
{ {
@ -441,9 +457,8 @@ typedef struct Campos_dbf
char campo_name[OLV_LIMP_MAX_CAMP]; char campo_name[OLV_LIMP_MAX_CAMP];
char campo_fow[OLV_LIMP_MAX_CAMP]; char campo_fow[OLV_LIMP_MAX_CAMP];
char campo_evi[OLV_LIMP_MAX_CAMP]; char campo_evi[OLV_LIMP_MAX_CAMP];
char campo_ang[OLV_LIMP_MAX_CAMP];
//ELEV TOM TOM //ELEV TOM TOM
char campo_conj_to[OLV_LIMP_MAX_CAMP];
char campo_conj_from[OLV_LIMP_MAX_CAMP];
char campo_elev_to[OLV_LIMP_MAX_CAMP]; char campo_elev_to[OLV_LIMP_MAX_CAMP];
char campo_elev_from[OLV_LIMP_MAX_CAMP]; char campo_elev_from[OLV_LIMP_MAX_CAMP];
///////////////////////////////////////////// /////////////////////////////////////////////

File diff suppressed because it is too large Load Diff

View File

@ -157,6 +157,7 @@ public:
//Unión de ámbitos a la red navegable //Unión de ámbitos a la red navegable
BOOL une_amb_nw(int soloi=-1); BOOL une_amb_nw(int soloi=-1);
BOOL corrije_topo_nw(); BOOL corrije_topo_nw();
BOOL corrije_conjunciones_nw();
int is_dmin(double daux, Info_inw_dmin *inww); int is_dmin(double daux, Info_inw_dmin *inww);
BOOL busca_inw_dmin(int i_amb); BOOL busca_inw_dmin(int i_amb);
BOOL busca_inw_dmin_ejes(int i_amb); BOOL busca_inw_dmin_ejes(int i_amb);
@ -189,11 +190,14 @@ public:
BOOL calcula_ang_conj(); BOOL calcula_ang_conj();
void calcula_ang_conj_sub(int ithr); void calcula_ang_conj_sub(int ithr);
double dame_ang_conj(int ic, int i, int j); double dame_ang_conj(int ic, int i, int j);
double dame_ang_conj2(int ic, int i, int j);
BOOL calcula_ang_conj_fin(); BOOL calcula_ang_conj_fin();
void revisa_calles_cortadas(); void revisa_calles_cortadas();
//Cálculo del coste entre ámbitos //Cálculo del coste entre ámbitos
void invierte_nodos(int nn, int KK,Secu_amb * ord_sec, BOOL *pirate); void invierte_nodos(int nn, int KK,Secu_amb * ord_sec, BOOL *pirate);
void revisa_calles_cortadas_old();
BOOL calcula_cost_amb(); BOOL calcula_cost_amb();
BOOL inicia_cost_amb(); BOOL inicia_cost_amb();
BOOL calcula_cost_amb_fin(); BOOL calcula_cost_amb_fin();

View File

@ -84,6 +84,7 @@ int APIENTRY _tWinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPTSTR lpCm
app->archi.rellena_dirs_ejecucion(); app->archi.rellena_dirs_ejecucion();
strcpy_s(strtem,MAX_PATH,app->archi.path_ejecutable); strcpy_s(strtem,MAX_PATH,app->archi.path_ejecutable);
Cdir_manager::dir_anterior(strtem); Cdir_manager::dir_anterior(strtem);
//Cdir_manager::dir_anterior(app->archi.path_ejecutable);
sprintf(lic.dirLic,"%s\\", strtem); sprintf(lic.dirLic,"%s\\", strtem);
sprintf(lic.dirTemp,"%s\\", app->log.path); sprintf(lic.dirTemp,"%s\\", app->log.path);
if(!lic.cargaLicencia(NULL,NOMBRE_PRODUCTO)) if(!lic.cargaLicencia(NULL,NOMBRE_PRODUCTO))

View File

@ -82,8 +82,8 @@ MAINICON ICON "favicon.ico"
// //
VS_VERSION_INFO VERSIONINFO VS_VERSION_INFO VERSIONINFO
FILEVERSION 3,1,6,0 FILEVERSION 4,2,2,0
PRODUCTVERSION 3,1,6,0 PRODUCTVERSION 4,2,2,0
FILEFLAGSMASK 0x17L FILEFLAGSMASK 0x17L
#ifdef _DEBUG #ifdef _DEBUG
FILEFLAGS 0x1L FILEFLAGS 0x1L
@ -100,12 +100,12 @@ BEGIN
BEGIN BEGIN
VALUE "CompanyName", "VSM" VALUE "CompanyName", "VSM"
VALUE "FileDescription", "Launcher de la aplicación Olivia" VALUE "FileDescription", "Launcher de la aplicación Olivia"
VALUE "FileVersion", "3.1.6.0" VALUE "FileVersion", "4.2.2.0"
VALUE "InternalName", "OliviaTasks" VALUE "InternalName", "OliviaTasks"
VALUE "LegalCopyright", "OLIVIA (c) VSM 2020. All rights reserved." VALUE "LegalCopyright", "OLIVIA (c) VSM 2020. All rights reserved."
VALUE "OriginalFilename", "OliviaTasks.exe" VALUE "OriginalFilename", "OliviaTasks.exe"
VALUE "ProductName", "OliviaTasks" VALUE "ProductName", "OliviaTasks"
VALUE "ProductVersion", "3.1.6.0" VALUE "ProductVersion", "4.2.2.0"
END END
END END
BLOCK "VarFileInfo" BLOCK "VarFileInfo"

View File

@ -13,7 +13,7 @@
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'"> <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
<LocalDebuggerWorkingDirectory>..\bin\$(IntDir)</LocalDebuggerWorkingDirectory> <LocalDebuggerWorkingDirectory>..\bin\$(IntDir)</LocalDebuggerWorkingDirectory>
<DebuggerFlavor>WindowsLocalDebugger</DebuggerFlavor> <DebuggerFlavor>WindowsLocalDebugger</DebuggerFlavor>
<LocalDebuggerCommand>C:\Desa\v2017\Olivia\bin\$(IntDir)$(TargetFileName)</LocalDebuggerCommand> <LocalDebuggerCommand>$(TargetPath)</LocalDebuggerCommand>
<LocalDebuggerCommandArguments>/tipo:1 /ip:192.168.2.61 /port:19995 /tout:20 /path_temp:D:\Proyectos\Olivia\Instal3.0\temp\ /path_cfgeo: /debug</LocalDebuggerCommandArguments> <LocalDebuggerCommandArguments>/tipo:1 /ip:192.168.2.61 /port:19995 /tout:20 /path_temp:D:\Proyectos\Olivia\Instal3.0\temp\ /path_cfgeo: /debug</LocalDebuggerCommandArguments>
</PropertyGroup> </PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'"> <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">

View File

@ -51,8 +51,8 @@ namespace OliviaDef
public const int ProgrMax = 100; public const int ProgrMax = 100;
public const int ProgrStep = 5; public const int ProgrStep = 5;
public const int ParamN = 5; public const int ParamN = 5;
public const int ParamLimpN = 46; public const int ParamLimpN = 50;
public const int ParamRecoN = 44; public const int ParamRecoN = 47;
/* /*
* Define el separador entre parámetros de la llamada al proceso oliviatasks * Define el separador entre parámetros de la llamada al proceso oliviatasks
*/ */
@ -142,6 +142,7 @@ namespace OliviaDef
public const string GG_pt = "path_temp"; public const string GG_pt = "path_temp";
public const string GG_pd = "path_data"; public const string GG_pd = "path_data";
public const string GG_pn = "path_nw"; public const string GG_pn = "path_nw";
public const string GG_pnc = "path_cnw";
public const string GG_pcar = "path_cart"; public const string GG_pcar = "path_cart";
public const string GG_pcfg = "path_cfgeo"; public const string GG_pcfg = "path_cfgeo";
public const string GG_strtto = "str_tto"; public const string GG_strtto = "str_tto";
@ -162,6 +163,9 @@ namespace OliviaDef
public const string GG_ais = "aislados"; public const string GG_ais = "aislados";
public const string GG_elev = "elevacion"; public const string GG_elev = "elevacion";
public const string GG_topo = "reviTopo"; public const string GG_topo = "reviTopo";
public const string GG_conj = "reviConj";
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

@ -22,6 +22,7 @@ class UTILES_EXPORT CartoBase: public SetEntities, public SetPtsR, public DataIa
friend class CartoBaseInfoBuilder; friend class CartoBaseInfoBuilder;
friend class CartoPto; friend class CartoPto;
friend class CartoLine; friend class CartoLine;
friend class CartoBaseTopologyManager;
private: private:
//info interna------------------------------- //info interna-------------------------------
int ref;//referencia para el siguiente elemento int ref;//referencia para el siguiente elemento
@ -56,7 +57,7 @@ public:
CartoBaseInfoEntity get(int i);//acceso a entidad iesima (modo lectura) CartoBaseInfoEntity get(int i);//acceso a entidad iesima (modo lectura)
CartoBaseInfoEntity getRef(int r);//acceso a entidad con referencia r (modo lectura) CartoBaseInfoEntity getRef(int r);//acceso a entidad con referencia r (modo lectura)
bool compruebaPts();
//añade elementos //añade elementos
bool add(CartoEntity& element); bool add(CartoEntity& element);
bool add(CartoBase& cad); bool add(CartoBase& cad);
@ -106,6 +107,8 @@ public:
virtual bool IaGetVal( int refEnt, int icol, int* v ); virtual bool IaGetVal( int refEnt, int icol, int* v );
virtual bool IaFinW(){return true;} virtual bool IaFinW(){return true;}
private: private:
int add(CartoBaseEntity* src); int add(CartoBaseEntity* src);