def txtAltitudeMChanged(self): try: test = float(self.txtAltitudeM.text()) if self.flag==0: self.flag=2; if self.flag==1: self.flag=0; if self.flag==2: try: self.txtAltitudeFt.setText(str(round(Unit.ConvertMeterToFeet(float(self.txtAltitudeM.text())), 4))) except: self.txtAltitudeFt.setText("0.0") self.emit(SIGNAL("Event_0"), self) except: str0 = "You must input the float type in \"%s\"."%(self.Caption) QMessageBox.warning(self, "Warning" , str0) self.txtAltitudeFt.setText("0.0")
def _chageFromMToFt(self): if self.flag == 0: self.flag = 1 if self.flag == 2: self.flag = 0 if self.flag == 1: try: self.txtAltitudeFt.setText( str( round( Unit.ConvertMeterToFeet( float(self.txtAltitudeM.text())), 4))) try: self.resultPoint3d = Point3D( self.resultPoint3d.get_X(), self.resultPoint3d.get_Y(), float(self.txtAltitudeM.text())) except: pass except ValueError: self.txtAltitudeFt.setText("")
def canvasReleaseEvent(self, e): if (e.button() == Qt.RightButton): self.reset() self.emit(SIGNAL("captureFinished")) else: self.rubberBandPt.reset(QGis.Point) snapPoint = QgisHelper.snapPoint(e.pos(), self.mSnapper, define._canvas, True) if self.startPoint == None: self.rubberBand.reset(QGis.Line) if snapPoint == None: self.startPoint = self.toMapCoordinates(e.pos()) else: self.startPoint = snapPoint self.rubberBand.addPoint(self.startPoint) self.isDrawing = True else: if snapPoint == None: self.endPoint = self.toMapCoordinates(e.pos()) else: self.endPoint = snapPoint self.rubberBand.addPoint(self.endPoint) dist = MathHelper.calcDistance(self.startPoint, self.endPoint) self.distance = self.distance + dist if self.type == DistanceUnits.M: self.txtBearing.setText("%f" % round(self.distance, 4)) elif self.type == DistanceUnits.NM: self.txtBearing.setText( "%f" % round(Unit.ConvertMeterToNM(self.distance), 4)) elif self.type == DistanceUnits.FT: self.txtBearing.setText( "%f" % round(Unit.ConvertMeterToFeet(self.distance), 4)) elif self.type == DistanceUnits.KM: self.txtBearing.setText("%f" % round( (self.distance / 1000), 4)) elif self.type == DistanceUnits.MM: self.txtBearing.setText(str(int(self.distance * 1000))) self.startPoint = self.endPoint
def addObstacleToModel(self, obstacle, checkResult): ObstacleTable.addObstacleToModel(self, obstacle, checkResult) row = self.source.rowCount() - 1 item = QStandardItem(str(checkResult[0])) item.setData(checkResult[0]) self.source.setItem(row, self.IndexDrM, item) item = QStandardItem(str(checkResult[1])) item.setData(checkResult[1]) self.source.setItem(row, self.IndexDoM, item) item = QStandardItem(str(checkResult[2])) item.setData(checkResult[2]) self.source.setItem(row, self.IndexMocReqM, item) item = QStandardItem(str(Unit.ConvertMeterToFeet(checkResult[2]))) item.setData(Unit.ConvertMeterToFeet(checkResult[2])) self.source.setItem(row, self.IndexMocReqFt, item) item = QStandardItem(str(checkResult[3])) item.setData(checkResult[3]) self.source.setItem(row, self.IndexAcAltM, item) item = QStandardItem(str(Unit.ConvertMeterToFeet(checkResult[3]))) item.setData(Unit.ConvertMeterToFeet(checkResult[3])) self.source.setItem(row, self.IndexAcAltFt, item) item = QStandardItem(str(checkResult[4])) item.setData(checkResult[4]) self.source.setItem(row, self.IndexAltReqM, item) item = QStandardItem(str(Unit.ConvertMeterToFeet(checkResult[4]))) item.setData(Unit.ConvertMeterToFeet(checkResult[4])) self.source.setItem(row, self.IndexAltReqFt, item) item = QStandardItem(str(checkResult[5])) item.setData(checkResult[5]) self.source.setItem(row, self.IndexPDG, item) item = QStandardItem(str(checkResult[6])) item.setData(checkResult[6]) self.source.setItem(row, self.IndexCritical, item) item = QStandardItem(str(checkResult[7])) item.setData(checkResult[7]) self.source.setItem(row, self.IndexCloseIn, item)
def addObstacleToModel(self, obstacle, checkResult): if self.typeStr == "buffer": ObstacleTable.addObstacleToModel(self, obstacle, checkResult) row = self.source.rowCount() - 1 item = QStandardItem(str(checkResult[0])) item.setData(checkResult[0]) self.source.setItem(row, self.IndexMocAppliedM, item) item = QStandardItem(str(Unit.ConvertMeterToFeet(checkResult[0]))) item.setData(Unit.ConvertMeterToFeet(checkResult[0])) self.source.setItem(row, self.IndexMocAppliedFt, item) item = QStandardItem(str(ObstacleTable.MocMultiplier)) item.setData(ObstacleTable.MocMultiplier) self.source.setItem(row, self.IndexMocMultiplier, item) item = QStandardItem(str(checkResult[1])) item.setData(checkResult[1]) self.source.setItem(row, self.IndexOcaM, item) item = QStandardItem(str(Unit.ConvertMeterToFeet(checkResult[1]))) item.setData(Unit.ConvertMeterToFeet(checkResult[1])) self.source.setItem(row, self.IndexOcaFt, item) item = QStandardItem(str(checkResult[2])) item.setData(checkResult[2]) self.source.setItem(row, self.IndexCritical, item) else: ObstacleTable.addObstacleToModel(self, obstacle, checkResult) row = self.source.rowCount() - 1 item = QStandardItem(str(checkResult[0])) item.setData(checkResult[0]) self.source.setItem(row, self.IndexObstArea, item) item = QStandardItem(str(checkResult[1])) item.setData(checkResult[1]) self.source.setItem(row, self.IndexDistInSecM, item) item = QStandardItem(str(checkResult[2])) item.setData(checkResult[2]) self.source.setItem(row, self.IndexMocAppliedM, item) item = QStandardItem(str(Unit.ConvertMeterToFeet(checkResult[2]))) item.setData(Unit.ConvertMeterToFeet(checkResult[2])) self.source.setItem(row, self.IndexMocAppliedFt, item) item = QStandardItem(str(ObstacleTable.MocMultiplier)) item.setData(ObstacleTable.MocMultiplier) self.source.setItem(row, self.IndexMocMultiplier, item) item = QStandardItem(str(checkResult[3])) item.setData(checkResult[3]) self.source.setItem(row, self.IndexOcaM, item) item = QStandardItem(str(Unit.ConvertMeterToFeet(checkResult[3]))) item.setData(Unit.ConvertMeterToFeet(checkResult[3])) self.source.setItem(row, self.IndexOcaFt, item) item = QStandardItem(str(checkResult[4])) item.setData(checkResult[4]) self.source.setItem(row, self.IndexCritical, item)
def addObstacleToModel(self, obstacle, checkResult=None): standardItemList = [] # obstacle.positionDegree = QgisHelper.Meter2Degree(obstacle.Position.x(), obstacle.Position.y()) standardItem = QStandardItem(str(obstacle.featureId)) standardItem.setData(obstacle.featureId) standardItemList.append(standardItem) standardItem = QStandardItem(str(obstacle.layerId)) standardItem.setData(obstacle.layerId) standardItemList.append(standardItem) standardItem = QStandardItem(str(obstacle.name)) standardItem.setData(obstacle.name) standardItemList.append(standardItem) standardItem = QStandardItem(str(obstacle.Position.x())) standardItem.setData(obstacle.Position.x()) standardItemList.append(standardItem) standardItem = QStandardItem(str(obstacle.Position.y())) standardItem.setData(obstacle.Position.y()) standardItemList.append(standardItem) value = QVariant(QgisHelper.strDegree(obstacle.positionDegree.y())) standardItem = QStandardItem(value.toString()) standardItem.setData(obstacle.positionDegree.y()) standardItemList.append(standardItem) strV = QgisHelper.strDegree(obstacle.positionDegree.y()) value = QVariant(QgisHelper.strDegree(obstacle.positionDegree.x())) standardItem = QStandardItem(value.toString()) standardItem.setData(obstacle.positionDegree.x()) standardItemList.append(standardItem) standardItem = QStandardItem(str(obstacle.Position.z())) standardItem.setData(obstacle.Position.z()) standardItemList.append(standardItem) standardItem = QStandardItem( str(Unit.ConvertMeterToFeet(obstacle.Position.z()))) standardItem.setData(Unit.ConvertMeterToFeet(obstacle.Position.z())) standardItemList.append(standardItem) standardItem = QStandardItem(str(obstacle.trees)) standardItem.setData(obstacle.trees) standardItemList.append(standardItem) standardItem = QStandardItem( str(Unit.ConvertMeterToFeet(obstacle.trees))) standardItem.setData(Unit.ConvertMeterToFeet(obstacle.trees)) standardItemList.append(standardItem) # for i in range(len(standardItemList), self.source.columnCount()): # standardItemList.append(QStandardItem("None")) self.source.appendRow(standardItemList) standardItem = QStandardItem(str(obstacle.mocMultiplier)) standardItem.setData(obstacle.mocMultiplier) self.source.setItem(self.source.rowCount() - 1, self.IndexMocMultiplier, standardItem)
def initParametersPan(self): ui = Ui_HoldingRnpGeneral() self.parametersPanel = ui FlightPlanBaseDlg.initParametersPan(self) self.parametersPanel.txtTas.setEnabled(False) self.parametersPanel.pnlWaypoint = PositionPanel( self.parametersPanel.holding) self.parametersPanel.pnlWaypoint.groupBox.setTitle("Waypoint Position") self.parametersPanel.pnlWaypoint.hideframe_Altitude() self.parametersPanel.pnlWaypoint.setObjectName("positionWaypoint") self.parametersPanel.pnlWaypoint.btnCalculater.hide() self.parametersPanel.verticalLayout.insertWidget( 0, self.parametersPanel.pnlWaypoint) self.parametersPanel.pnlWind = WindPanel( self.parametersPanel.grbParameters) self.parametersPanel.vLayout_grbParameters.insertWidget( 5, self.parametersPanel.pnlWind) self.parametersPanel.pnlWind.setAltitude( Altitude(float(self.parametersPanel.txtAltitude.text()), AltitudeUnits.FT)) # self.resize(460,600) self.parametersPanel.cmbConstruction.addItems(["2D", "3D"]) self.parametersPanel.cmbAircraftCategory_2.addItems( ["A", "B", "C", "D", "E", "H", "Custom"]) self.parametersPanel.cmbOrientation.addItems( [OrientationType.Left, OrientationType.Right]) # self.parametersPanel.cmbOrientation.setCurrentIndex(1) # # '''Event Handlers Connect''' # self.parametersPanel.txtAltitude.textChanged.connect(self.method_31) # self.parametersPanel.cmbTurnLimitation.currentIndexChanged.connect(self.method_28) # self.parametersPanel.btnCaptureTrack.clicked.connect(self.captureBearing) self.parametersPanel.cmbAircraftCategory_2.currentIndexChanged.connect( self.changeCategory) self.parametersPanel.cmbAircraftCategory_2.setCurrentIndex(3) self.frame_8_1 = QFrame(self) sizePolicy = QSizePolicy(QSizePolicy.Minimum, QSizePolicy.Preferred) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) # sizePolicy.setHeightForWidth(self.frame_8.sizePolicy().hasHeightForWidth()) self.frame_8_1.setSizePolicy(sizePolicy) self.frame_8_1.setFrameShape(QFrame.StyledPanel) self.frame_8_1.setFrameShadow(QFrame.Raised) self.frame_8_1.setObjectName("frame_8") self.horizontalLayout_10_1 = QHBoxLayout(self.frame_8_1) self.horizontalLayout_10_1.setAlignment(Qt.AlignHCenter) self.horizontalLayout_10_1.setSpacing(0) self.horizontalLayout_10_1.setMargin(0) self.horizontalLayout_10_1.setObjectName("horizontalLayout_10") self.label_2_1 = QLabel(self.frame_8_1) self.label_2_1.setMinimumSize(QSize(140, 16777215)) # self.label_2_1.setFixedWidth(100) self.label_2_1.setText("MOCmultiplier") font = QFont() font.setFamily("Arial") font.setBold(False) font.setWeight(50) self.label_2_1.setFont(font) self.label_2_1.setObjectName("label_2_1") self.horizontalLayout_10_1.addWidget(self.label_2_1) self.parametersPanel.mocSpinBox = QSpinBox(self.frame_8_1) self.parametersPanel.mocSpinBox.setFont(font) self.parametersPanel.mocSpinBox.setObjectName("mocSpinBox") sizePolicy = QSizePolicy(QSizePolicy.MinimumExpanding, QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth( self.parametersPanel.mocSpinBox.sizePolicy().hasHeightForWidth()) self.parametersPanel.mocSpinBox.setSizePolicy(sizePolicy) self.parametersPanel.mocSpinBox.setMinimum(1) self.parametersPanel.mocSpinBox.setMinimumSize(QSize(140, 16777215)) # self.parametersPanel.mocSpinBox.setFixedWidth(100) self.horizontalLayout_10_1.addWidget(self.parametersPanel.mocSpinBox) # self.verticalLayout_9.addWidget(self.frame_8_1) self.parametersPanel.vLayout_grbParameters.addWidget(self.frame_8_1) self.parametersPanel.btnIasHelp.clicked.connect(self.iasHelpShow) self.parametersPanel.frame_ConstructionType_2.hide() self.parametersPanel.txtIas.textChanged.connect(self.iasChanged) self.parametersPanel.txtIsa.textChanged.connect(self.isaChanged) # self.parametersPanel.txtIsa.textChanged.connect(self.isaChanged) self.parametersPanel.txtAltitudeM.textChanged.connect( self.txtAltitudeMChanged) self.parametersPanel.txtAltitude.textChanged.connect( self.txtAltitudeFtChanged) self.flag = 0 if self.flag == 0: self.flag = 2 if self.flag == 1: self.flag = 0 if self.flag == 2: try: self.parametersPanel.txtAltitudeM.setText( str( round( Unit.ConvertFeetToMeter( float( self.parametersPanel.txtAltitude.text())), 4))) except: self.parametersPanel.txtAltitudeM.setText("0.0") self.parametersPanel.txtMoc.textChanged.connect(self.txtMocMChanged) self.parametersPanel.txtMocFt.textChanged.connect(self.txtMocFtChanged) self.flag1 = 0 if self.flag1 == 0: self.flag1 = 1 if self.flag1 == 2: self.flag1 = 0 if self.flag1 == 1: try: self.parametersPanel.txtMocFt.setText( str( round( Unit.ConvertMeterToFeet( float(self.parametersPanel.txtMoc.text())), 4))) except: self.parametersPanel.txtMocFt.setText("0.0") self.parametersPanel.txtTas.setText( str( round( Speed.smethod_0( Speed(float(self.parametersPanel.txtIas.text())), float(self.parametersPanel.txtIsa.text()), Altitude( float(self.parametersPanel.txtAltitude.text()), AltitudeUnits.FT)).Knots, 4)))
def initParametersPan(self): ui = Ui_DepartureOmnidirectional() self.parametersPanel = ui FlightPlanBaseDlg.initParametersPan(self) self.parametersPanel.chbHideCloseInObst = QCheckBox(self.ui.grbResult) font = QFont() font.setBold(False) font.setWeight(50) self.parametersPanel.chbHideCloseInObst.setFont(font) self.parametersPanel.chbHideCloseInObst.setObjectName( "chbHideCloseInObst") self.ui.vlResultGroup.addWidget( self.parametersPanel.chbHideCloseInObst) self.parametersPanel.chbHideCloseInObst.setText( "Hide close-in obstacles") self.parametersPanel.txtRadiusFt.setEnabled(False) self.parametersPanel.txtRadius.setEnabled(False) self.parametersPanel.frameMinTurnHeight_CATH.setVisible(False) self.parametersPanel.pnlDer = PositionPanel( self.parametersPanel.gbRunway) self.parametersPanel.pnlDer.groupBox.setTitle("DER Position") self.parametersPanel.pnlDer.btnCalculater.hide() # self.parametersPanel.pnlRwyDir.hideframe_Altitude() self.parametersPanel.pnlDer.setObjectName("pnlDer") ui.vl_gbRunway.addWidget(self.parametersPanel.pnlDer) # self.connect(self.parametersPanel.pnlRwyDir, SIGNAL("positionChanged"), self.initResultPanel) self.parametersPanel.pnlRwyStart = PositionPanel( self.parametersPanel.gbRunway) self.parametersPanel.pnlRwyStart.groupBox.setTitle( "Start of RWY/FATO Position") self.parametersPanel.pnlRwyStart.btnCalculater.hide() self.parametersPanel.pnlRwyStart.hideframe_Altitude() self.parametersPanel.pnlRwyStart.setObjectName("pnlRwyStart") ui.vl_gbRunway.insertWidget(1, self.parametersPanel.pnlRwyStart) self.calcRadiusArea3() self.parametersPanel.cmbSelectionMode.addItems(["Automatic", "Manual"]) self.parametersPanel.cmbSelectionMode.currentIndexChanged.connect( self.manualEvent) # self.parametersPanel.cmbHoldingFunctionality.currentIndexChanged.connect(self.cmbHoldingFunctionalityCurrentIndexChanged) # self.parametersPanel.cmbOutboundLimit.currentIndexChanged.connect(self.cmbOutboundLimitCurrentIndexChanged) # self.parametersPanel.btnCaptureDer.clicked.connect(self.captureBearing) self.parametersPanel.chbHideCloseInObst.stateChanged.connect( self.chbHideCloseInObstStateChanged) self.parametersPanel.chbCatH.stateChanged.connect( self.chbCATHStateChanged) self.parametersPanel.txtPdg.textChanged.connect(self.calcRadiusArea3) self.parametersPanel.pnlDer.txtPointX.textChanged.connect( self.calcRadiusArea3) self.parametersPanel.pnlDer.txtAltitudeM.textChanged.connect( self.calcRadiusArea3) self.parametersPanel.txtNextSegmentAltitude.textChanged.connect( self.txtNextSegmentAltitudeChanged) self.parametersPanel.txtTurningAltitude.textChanged.connect( self.txtTurningAltitudeChanged) self.parametersPanel.txtNextSegmentAltitudeM.textChanged.connect( self.txtNextSegmentAltitudeMChanged) self.parametersPanel.txtTurningAltitudeM.textChanged.connect( self.txtTurningAltitudeMChanged) self.parametersPanel.txtMinTurnHeight.textChanged.connect( self.txtMinTurnHeightChanged) self.parametersPanel.txtMinTurnHeightFt.textChanged.connect( self.txtMinTurnHeightFtChanged) self.parametersPanel.txtMinTurnHeight_CATH.textChanged.connect( self.txtMinTurnHeight_CATHChanged) self.parametersPanel.txtMinTurnHeight_CATH_2.textChanged.connect( self.txtMinTurnHeight_CATH_2Changed) # self.parametersPanel.btnCaptureDistance.clicked.connect(self.measureDistance) # self.parametersPanel.btnCaptureLength.clicked.connect(self.measureLength) # self.parametersPanel.txtAltitude.textChanged.connect(self.altitudeChanged) # self.parametersPanel.cmbAircraftCategory.currentIndexChanged.connect(self.changeCategory) # self.parametersPanel.btnIasHelp.clicked.connect(self.iasHelpShow) # self.parametersPanel.txtIas.textChanged.connect(self.iasChanged) # self.parametersPanel.txtIsa.textChanged.connect(self.isaChanged) # self.txtTFlag = True self.txtNFlag = True self.txtTMFlag = False self.txtNMFlag = False self.flag = 0 self.flag1 = 0 self.flag2 = 0 self.flag3 = 0 try: self.parametersPanel.txtNextSegmentAltitudeM.setText( str( round( Unit.ConvertFeetToMeter( float(self.parametersPanel.txtNextSegmentAltitude. text())), 4))) except: self.parametersPanel.txtNextSegmentAltitudeM.setText("0.0") try: self.parametersPanel.txtTurningAltitudeM.setText( str( round( Unit.ConvertFeetToMeter( float(self.parametersPanel.txtTurningAltitude.text( ))), 4))) except: self.parametersPanel.txtTurningAltitudeM.setText("0.0") try: self.parametersPanel.txtMinTurnHeightFt.setText( str( round( Unit.ConvertMeterToFeet( float( self.parametersPanel.txtMinTurnHeight.text())), 4))) except: self.parametersPanel.txtMinTurnHeightFt.setText("0.0") try: self.parametersPanel.txtMinTurnHeight_CATH_2.setText( str( round( Unit.ConvertMeterToFeet( float(self.parametersPanel.txtMinTurnHeight_CATH. text())), 4))) except: self.parametersPanel.txtMinTurnHeight_CATH_2.setText("0.0")