def selectCrs(self): projectionDlg = QgsGenericProjectionSelector(self) projectionDlg.setSelectedAuthId(self.mCrs.authid()) if projectionDlg.exec_(): self.mCrs = QgsCoordinateReferenceSystem( projectionDlg.selectedCrsId(), QgsCoordinateReferenceSystem.InternalCrsId) self.ui.txtCrs.setText(self.mCrs.authid() + " - " + self.mCrs.description())
def browseCRS(self): selector = QgsGenericProjectionSelector() selector.setSelectedAuthId(self.crs) if selector.exec_(): authId = selector.selectedAuthId() if authId.upper().startswith("EPSG:"): self.crs = authId else: proj = QgsCoordinateReferenceSystem() proj.createFromSrsId(selector.selectedCrsId()) self.crs = proj.toProj4() self.updateText()
def on_cmdInCRS_clicked(self): dlg = QgsGenericProjectionSelector(self) dlg.setMessage('Select coordinate system for the input file geometry') if self.vesper_qgscrs is not None: dlg.setSelectedAuthId(self.vesper_qgscrs.authid()) if dlg.exec_(): if dlg.selectedAuthId() != '': # ie clicked ok without selecting a projection crs = QgsCoordinateReferenceSystem(dlg.selectedAuthId()) if crs == 'Unspecified' or crs == '': self.vesper_qgscrs = None self.lneInCRS.setText('Unspecified') else: self.vesper_qgscrs = QgsCoordinateReferenceSystem(crs) self.vesper_qgscrs.validate() self.lneInCRS.setText( '{} - {}'.format(self.vesper_qgscrs.description(), self.vesper_qgscrs.authid())) self.lneInCRS.setStyleSheet('color:black;background:transparent;') self.lblInCRSTitle.setStyleSheet('color:black')
class CRSButton(QPushButton) : def __init__(self) : super(QPushButton, self).__init__() self.crsDialog = QgsGenericProjectionSelector() QObject.connect(self, SIGNAL("clicked()"), self.crsDialog.exec_) QObject.connect(self, SIGNAL("clicked()"), self.update) self._crs = None def crs(self) : return self._crs def setCrs(self, cr) : self._crs = cr self.setText(cr.description()) self.crsDialog.setSelectedAuthId(cr.authid()) def update(self) : self.setCrs(QgsCoordinateReferenceSystem(self.crsDialog.selectedAuthId()))
def geomapfishCrsButtonClicked(self): dlg = QgsGenericProjectionSelector(self) dlg.setMessage('Select GeoMapFish CRS') dlg.setSelectedAuthId(self.geomapfishCrs.text()) if dlg.exec_(): self.geomapfishCrs.setText(dlg.selectedAuthId())