Chcę utworzyć funkcję, która wybiera funkcję i przybliża ją (podobnie w QGIS). Dlatego istnieje następująca funkcja:
QgsMapLayerRegistry.instance().addMapLayer(self.vlayer)
def zoomTo(self):
layer = self.vlayer
atable = self.ui.table
selectList=[]
for i in atable.selectionModel().selectedRows():
ID = atable.item(i.row(),0).text()
selectList.append(int(ID))
layer.setSelectedFeatures(selectList)
Wybrane obiekty są podświetlone na mapie. Ale nie mam pojęcia, jak wykonać „zbliżenie” do wybranych obiektów lub jakoś ustawić je na środku mapy.
gis.utils.iface
. Teraz działa idealnie. Jeszcze raz dziękuję!Zoom do wybranych funkcji można także wykonać, uruchamiając opcję „Zoom to Selection” w menu View.
Uwaga: Numer indeksu może się różnić w zależności od wersji QGIS.
Lub bardziej bezpośrednio:
źródło
iface.actionZoomToSelected().trigger()
jest trochę bezpieczniejsza :)# Pierwszy QMessageBox wyświetla wszystkie wybrane funkcje:
# Drugi zoom do wybranych funkcji:
źródło