Compare commits
4 Commits
Gerardo/es
...
master
| Author | SHA1 | Date |
|---|---|---|
|
|
d4cc0745f6 | |
|
|
4d3eff1dce | |
|
|
028928896e | |
|
|
431578ba46 |
|
|
@ -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"
|
||||||
|
|
|
||||||
|
|
@ -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;
|
||||||
|
|
|
||||||
|
|
@ -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);
|
||||||
}
|
}
|
||||||
//*************************************************************************************
|
//*************************************************************************************
|
||||||
|
|
|
||||||
|
|
@ -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)
|
||||||
{
|
{
|
||||||
|
|
|
||||||
|
|
@ -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
|
||||||
//*************************************************************************************
|
//*************************************************************************************
|
||||||
|
|
|
||||||
|
|
@ -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
|
|
@ -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();
|
||||||
|
|
|
||||||
|
|
@ -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))
|
||||||
|
|
|
||||||
|
|
@ -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"
|
||||||
|
|
|
||||||
|
|
@ -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'">
|
||||||
|
|
|
||||||
|
|
@ -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
|
||||||
|
|
|
||||||
|
|
@ -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);
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue