Ubah koordinat kanvas ke posisi layar [tertutup]


8

Saya punya titik, yang memiliki koordinat peta (kanvas) dan akan bagus untuk memiliki posisi layarnya. Saya memerlukan ini untuk mengatur posisi kursor di tempat yang sama, di mana titik berada.

Apakah Anda tahu cara untuk mengonversi koordinat ini?

Jawaban:


7

Saya pikir sesuatu seperti yang berikut ini dapat bekerja di mana Anda perlu mengubah koordinat peta Anda menjadi koordinat layar menggunakan QgsMapTool :: toCanvasCoordinates . Pilih titik di lapisan Anda lalu jalankan yang berikut di Python Console :

from qgis.gui import QgsMapTool
from PyQt4.QtGui import QCursor

layer = iface.activeLayer()
for f in layer.selectedFeatures():
    geom = f.geometry()
    point = QgsMapTool(iface.mapCanvas()).toCanvasCoordinates(geom.asPoint())
    transformed_point = iface.mapCanvas().mapToGlobal(point)
    QCursor().setPos(transformed_point.x(), transformed_point.y())
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.