def __init__(self, parent, canvas): ''' Constructor ''' QDialog.__init__(self, parent) self.ui = Ui_MeasureDialog() self.ui.setupUi(self) # self.layerSet = layerSet self.canvas = canvas self.ui.cmbMeasureType.addItems(["M", "FT", "KM", "NM"]) self.setFont(QFont("Arial")) self.ui.btnNew.clicked.connect(self.Measure) self.ui.btnClose.clicked.connect(self.exit) self.ui.cmbMeasureType.currentIndexChanged.connect(self.changeType) self.measureType = DistanceUnits.M self.toolCaptureCoord = MeasureTool(self.canvas, self.ui.txtToal, self.measureType)
def __init__(self, parent, canvas): ''' Constructor ''' QDialog.__init__(self, parent) self.ui = Ui_MeasureDialog() self.ui.setupUi(self) # self.layerSet = layerSet self.canvas = canvas self.ui.cmbMeasureType.hide() # self.ui.cmbMeasureType.addItems(["M", "FT", "KM", "NM"]) self.ui.btnNew.clicked.connect(self.Measure) self.ui.btnClose.clicked.connect(self.exit) self.ui.textLabel2.setText(unicode("Angle (°)" , "utf-8")) # self.ui.cmbMeasureType.currentIndexChanged.connect(self.changeType) # self.measureType = DistanceUnits.M self.toolCaptureBearing = CaptureBearingTool(self.canvas, self.ui.txtToal)
class AddMeasureToolDlg(QDialog): ''' classdocs ''' def __init__(self, parent, canvas): ''' Constructor ''' QDialog.__init__(self, parent) self.ui = Ui_MeasureDialog() self.ui.setupUi(self) # self.layerSet = layerSet self.canvas = canvas self.ui.cmbMeasureType.addItems(["M", "FT", "KM", "NM"]) self.setFont(QFont("Arial")) self.ui.btnNew.clicked.connect(self.Measure) self.ui.btnClose.clicked.connect(self.exit) self.ui.cmbMeasureType.currentIndexChanged.connect(self.changeType) self.measureType = DistanceUnits.M self.toolCaptureCoord = MeasureTool(self.canvas, self.ui.txtToal, self.measureType) def Measure(self): self.measureType = self.ui.cmbMeasureType.currentIndex() self.toolCaptureCoord = MeasureTool(self.canvas, self.ui.txtToal, self.measureType) self.canvas.setMapTool(self.toolCaptureCoord) # if self.btnCaptureCoord.isChecked(): # self.iface.mapCanvas().setMapTool(self.toolCaptureCoord) # else: def exit(self): # self.toolCaptureCoord.deactivate() # self.toolCaptureCoord.restart() self.toolCaptureCoord.rubberBand.reset(QGis.Line) self.canvas.unsetMapTool(self.toolCaptureCoord) self.reject() def changeType(self): if self.ui.txtToal != "" and self.ui.cmbMeasureType.currentIndex( ) != self.measureType: if self.measureType == DistanceUnits.M: if self.ui.cmbMeasureType.currentIndex() == DistanceUnits.FT: dist = float(self.ui.txtToal.text()) self.ui.txtToal.setText(str(Unit.ConvertMeterToFeet(dist))) elif self.ui.cmbMeasureType.currentIndex() == DistanceUnits.KM: dist = float(self.ui.txtToal.text()) self.ui.txtToal.setText(str(dist / 1000.0)) elif self.ui.cmbMeasureType.currentIndex() == DistanceUnits.NM: dist = float(self.ui.txtToal.text()) self.ui.txtToal.setText(str(Unit.ConvertMeterToNM(dist))) elif self.measureType == DistanceUnits.FT: if self.ui.cmbMeasureType.currentIndex() == DistanceUnits.M: dist = float(self.ui.txtToal.text()) self.ui.txtToal.setText(str(Unit.ConvertFeetToMeter(dist))) elif self.ui.cmbMeasureType.currentIndex() == DistanceUnits.KM: dist = float(self.ui.txtToal.text()) self.ui.txtToal.setText( str(Unit.ConvertFeetToMeter(dist) / 1000.0)) elif self.ui.cmbMeasureType.currentIndex() == DistanceUnits.NM: dist = float(self.ui.txtToal.text()) self.ui.txtToal.setText(str(Unit.ConvertFeetToNM(dist))) elif self.measureType == DistanceUnits.KM: if self.ui.cmbMeasureType.currentIndex() == DistanceUnits.M: dist = float(self.ui.txtToal.text()) self.ui.txtToal.setText(str(Unit.ConvertKMToMeters(dist))) elif self.ui.cmbMeasureType.currentIndex() == DistanceUnits.FT: dist = float(self.ui.txtToal.text()) self.ui.txtToal.setText(str(Unit.ConvertKMToFeet(dist))) elif self.ui.cmbMeasureType.currentIndex() == DistanceUnits.NM: dist = float(self.ui.txtToal.text()) self.ui.txtToal.setText(str(Unit.ConvertKMToNM(dist))) elif self.measureType == DistanceUnits.NM: if self.ui.cmbMeasureType.currentIndex() == DistanceUnits.M: dist = float(self.ui.txtToal.text()) self.ui.txtToal.setText(str(Unit.ConvertNMToMeter(dist))) elif self.ui.cmbMeasureType.currentIndex() == DistanceUnits.FT: dist = float(self.ui.txtToal.text()) self.ui.txtToal.setText( str( Unit.ConvertMeterToFeet( Unit.ConvertNMToMeter(dist)))) elif self.ui.cmbMeasureType.currentIndex() == DistanceUnits.KM: dist = float(self.ui.txtToal.text()) self.ui.txtToal.setText( str(Unit.ConvertNMToMeter(dist) / 1000.0)) self.measureType = self.ui.cmbMeasureType.currentIndex()