gvSIG bugs #3112
Union geoprocess lasts a lot
Status: | Closed | % Done: | 0% | |
---|---|---|---|---|
Priority: | Normal | Spent time: | - | |
Assignee: | Francisco Díaz Carsí | |||
Category: | Geoprocess | |||
Target version: | 2.2.0-2303 (rev. org.gvsig.desktop-2.0.90) | |||
Severity: | Minor | Add-on version: | ||
gvSIG version: | 2.1.0 | Add-on build: | ||
gvSIG build: | 2262 | Add-on resolve version: | ||
Operative System: | Add-on resolve build: | |||
Keywords: | Proyecto: | |||
Has patch: | Hito: | |||
Add-on name: | Unknown |
Description
The Union geoprocess (gvSIG vector geoprocesses) takes a lot of time in finishing. It finishes the two processes quickly, but at the second one, when the time bar is completed it takes several minutes at the same point without finishing the geoprocess.
At the end the results are correct but it takes a lot.
I attach the log file.
Associated revisions
refs #3112 Aceleracion del geoproceso unión
History
#1 Updated by Álvaro Anguix about 9 years ago
- Assignee set to Francisco Díaz Carsí
#2 Updated by Álvaro Anguix about 9 years ago
- Target version set to 2.2.0-2311-rc2
#3 Updated by Francisco Díaz Carsí about 9 years ago
- Status changed from New to Fixed
Este geoproceso se divide en tres subprocesos:
#El cálculo de la intersección de las dos capas
#El cálculo de la diferencia entre la primera capa y la segunda
#El cálculo de la diferencia entre la segunda capa y la primera
En los cálculos de la diferencia entre capas había un gran cuello de botella porque para hacerlo generaba una geometría temporal con la unión de todas las geometrías de la capa que llega como primer argumento y para ello se la recorría añadía una a una las geometrías de dicha capa en la geometría temporal pasando cada vez por un proceso de la librería de JTS que, conforme la geometría temporal iba creciendo le costaba más.
Además, como este proceso no esta contabilizado en la barra de progreso podía darle la impresión al usuario de que gvSIG se había quedado colgado.
Esto lo he sustituido por un recorrido por las geometrías de dicha capa, guardándolas en un array y llamando una única vez al proceso de JTS.
He hecho alguna prueba y, como ejemplo, se puede ver que antes con la capa de parcelas de Valencia el proceso de generación de la geometría duraba horas y, ahora, dura apenas 3 segundos.
El resto de subprocesos no he visto manera de acelerarlos pues inevitablemente tienen que recorrerse las capas para operar con las geometrías.
#4 Updated by Francisco Díaz Carsí about 9 years ago
El arreglo será efectivo cuando se genere un nuevo build de geoprocesos.
#5 Updated by Joaquín del Cerro Murciano about 9 years ago
- Target version changed from 2.2.0-2311-rc2 to 2.2.0-2303 (rev. org.gvsig.desktop-2.0.90)
#6 Updated by Álvaro Anguix about 9 years ago
- Status changed from Fixed to Closed