2 votos

Crear una capa vectorial en el sistema de referencia de coordenadas USER:10001

Quiero crear una capa vectorial en el CRS : USER:100001 pero no funciona. Siempre me dice, tengo que elegir el CRS por mí mismo.

vl = QgsVectorLayer("Punto?crs=usuario:100001", "Proyecto_centro", "memoria")

Pero cuando lo pruebo con ESPG:4326, funciona como se esperaba. ¿Alguien puede ayudarme?

2voto

Brett Anspach Puntos 121

Creo que su código vl = QgsVectorLayer("Point?crs=user:100001", "Project_center", "memory") sólo funciona a partir de QGIS3.0. Para 2.xx puede probar lo siguiente:

from PyQt4.QtCore import QSettings

# save actualy value
crsType = QSettings().value('/Projections/defaultBehaviour') # only 2.x

QSettings().setValue('/Projections/defaultBehaviour','')
target_crs = QgsCoordinateReferenceSystem()
target_crs.createFromId(100001, QgsCoordinateReferenceSystem.InternalCrsId)

vl = QgsVectorLayer("Point", "Project_center", "memory")
vl.setCrs(target_crs)
print vl.crs().authid()

# set saved  value
QSettings().setValue('/Projections/defaultBehaviour',crsType)

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X