4 votos

Encontrar la posición X/Y del elemento de diseño usando PyQGIS

Utilizando QGIS 3.10, estoy intentando mover una leyenda en un diseño a la misma posición que una leyenda en otro diseño. No puedo averiguar cómo obtener la posición X/Y de la primera leyenda.

project = QgsProject.instance()
projectLayoutManager = project.layoutManager()

layout1 = projectLayoutManager.layoutByName("layout1")
legend1 = layout1.itemById("legend")
x = (x position of legend?)
y = (y position of legend?)

layout2 = projectLayoutManager.layoutByName("layout2")
legend2 = layout2.itemById("legend")

legend2.attemptMove(QgsLayoutPoint(x,y,QgsUnitTypes.LayoutMillimeters))

4voto

David Galt Puntos 93

Lo he descubierto yo mismo:

project = QgsProject.instance()
projectLayoutManager = project.layoutManager()

layout1 = projectLayoutManager.layoutByName("layout1")
legend1 = layout1.itemById("legend")
CurrentPositionPoint=legend1.positionWithUnits()

layout2 = projectLayoutManager.layoutByName("layout2")
legend2 = layout2.itemById("legend")
legend2.attemptMove(CurrentPositionPoint)

He encontrado la respuesta aquí : Documentación de la API de QGIS -->Referencia de la clase QgsLayoutItemLegend -->Funciones públicas heredadas de QgsLayoutItem

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