Python - Petición usuario sistema de coordenadas

 
Vista:

Petición usuario sistema de coordenadas

Publicado por Isis22 (3 intervenciones) el 23/10/2020 12:02:29
Hola,

Estoy tratando de hacer un script que solicite al usuario el sistema de coordenadas al que quiere reproyectar las capas y que el script las reproyecte a ese sistema.

Creo que no olvidé nada en el script, pero da un error al ejecutar el programa que no consigo resolver. ¿Alguna idea?


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
import glob
import processing
 
pth = r'C:\Python/Ejercicio/'
 
listaArch = glob.glob(pth + '*.shp')
 
print (listaArch)
 
rutaIn = listaArch
 
lista = ['4326', '25830', '4230', '23030']
epsg, ok = QInputDialog.getItem(None,
'REPROYECCION A', u'Introduce el EPSG',(lista))
 
crsDestino =  QgsCoordinateReferenceSystem(int(epsg))
 
listaCapas = []
 
for n in range(len(listaArch)):
    arch = listaArch[n]
    ind1 = arch.find('\\') + 1
    ind2 = len(arch)- 10
    titulo = arch[ind1:ind2] + 'EPSG' + epsg
    capa= QgsVectorLayer(arch, titulo,'ogr')
 
    rutaOut = r'C:\Python/Ejercicio/'+ titulo +'.shp'
 
    QgsVectorFileWriter.writeAsVectorFormat(capa, rutaOut, 'utf-8', crsDestino, driverName = "ESRI Shapefile")
    processing.run("native:reprojectlayer",{'INPUT':arch,'TARGET_CRS':crsDestino,'OUTPUT':rutaOut})
 
    capaProyectada = QgsVectorLayer(rutaOut, titulo,'ogr')
    listaCapas.append(capaProyectada)
 
QgsProject.instance().addMapLayers(listaCapas)

Gracias.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Anikollaste
Val: 570
Bronce
Ha mantenido su posición en Python (en relación al último mes)
Gráfica de Python

Petición usuario sistema de coordenadas

Publicado por Anikollaste (118 intervenciones) el 23/10/2020 14:51:35
Estoy un poco perdido con tu código. Qué error te da?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Petición usuario sistema de coordenadas

Publicado por Isis2 (3 intervenciones) el 23/10/2020 14:53:15
Traceback (most recent call last):
File "C:\PROGRA~1\QGIS3~1.4\apps\Python37\lib\code.py", line 90, in runcode
exec(code, self.locals)
File "<input>", line 1, in <module>
File "<string>", line 30, in <module>
File "C:/PROGRA~1/QGIS3~1.4/apps/qgis-ltr/./python/plugins\processing\tools\general.py", line 105, in run
return Processing.runAlgorithm(algOrName, parameters, onFinish, feedback, context)
File "C:/PROGRA~1/QGIS3~1.4/apps/qgis-ltr/./python/plugins\processing\core\Processing.py", line 183, in runAlgorithm
raise QgsProcessingException(msg)
_core.QgsProcessingException: Hubo errores al ejecutar el algoritmo.Traceback (most recent call last):
File "C:\PROGRA~1\QGIS3~1.4\apps\Python37\lib\code.py", line 90, in runcode
exec(code, self.locals)
File "<input>", line 1, in <module>
File "<string>", line 30, in <module>
File "C:/PROGRA~1/QGIS3~1.4/apps/qgis-ltr/./python/plugins\processing\tools\general.py", line 105, in run
return Processing.runAlgorithm(algOrName, parameters, onFinish, feedback, context)
File "C:/PROGRA~1/QGIS3~1.4/apps/qgis-ltr/./python/plugins\processing\core\Processing.py", line 183, in runAlgorithm
raise QgsProcessingException(msg)
_core.QgsProcessingException: Hubo errores al ejecutar el algoritmo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Anikollaste
Val: 570
Bronce
Ha mantenido su posición en Python (en relación al último mes)
Gráfica de Python

Petición usuario sistema de coordenadas

Publicado por Anikollaste (118 intervenciones) el 23/10/2020 15:02:40
Ya veo que este código tiene otros módulos.
Lo siento, el problema que planteas sobrepasa mis conocimientos.
Un saludo!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Petición usuario sistema de coordenadas

Publicado por Isis22 (3 intervenciones) el 23/10/2020 15:13:17
Gracias de todas formas :)
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar