def saveSetupFile(self, setupObject): setupFilePath = setupObject.setupPath if os.path.isfile(setupFilePath): limboSetupObject = copy.deepcopy(setupObject) limboSetupObject.decimalPlaces = int(self.precComboBox.currentText()) limboSetupObject.marxanPath = self.marxanLineEdit.text() limboSetupObject.inputPath = self.inputLineEdit.text() limboSetupObject.outputPath = self.outputLineEdit.text() limboSetupObject.puPath = self.puLineEdit.text() limboSetupObject.targetPath = self.targLineEdit.text() cluz_setup.checkStatusObjectValues(limboSetupObject) if limboSetupObject.setupStatus == "values_checked": cluz_setup.createAndCheckCLUZFiles(limboSetupObject) setupObject = copy.deepcopy(limboSetupObject) if setupObject.setupStatus == "files_checked": cluz_setup.updateClzSetupFile(setupObject) setupPathLabelText = "Setup file location: " + str(setupFilePath) self.setupPathLabel.setText(setupPathLabelText) cluz_setup.checkAddPlanningUnit(setupObject) elif setupFilePath == "blank": qgis.utils.iface.messageBar().pushMessage("No CLUZ setup file name", "The CLUZ setup file name has not been set. Please use the Save As... option instead.", QgsMessageBar.WARNING) else: qgis.utils.iface.messageBar().pushMessage("CLUZ setup file name error", "The current CLUZ setup file path is incorrect.", QgsMessageBar.WARNING)
def saveAsSetupFile(self, setupObject): newSetupFilePath = QFileDialog.getSaveFileName( self, 'Save new CLUZ setup file', '*.clz') if newSetupFilePath != "": setupObject.decimalPlaces = int(self.precComboBox.currentText()) setupObject.marxanPath = self.marxanLineEdit.text() setupObject.inputPath = self.inputLineEdit.text() setupObject.outputPath = self.outputLineEdit.text() setupObject.puPath = self.puLineEdit.text() setupObject.targetPath = self.targLineEdit.text() setupObject.setupPath = newSetupFilePath cluz_setup.checkStatusObjectValues(setupObject) if setupObject.setupStatus == "values_checked": cluz_setup.createAndCheckCLUZFiles(setupObject) if setupObject.setupStatus == "files_checked": cluz_setup.updateClzSetupFile(setupObject) setupPathLabelText = "Setup file location: " + str( newSetupFilePath) self.setupPathLabel.setText(setupPathLabelText) cluz_setup.checkAddPULayer(setupObject) else: qgis.utils.iface.messageBar().pushMessage( "CLUZ setup file name error", "The current CLUZ setup file path is incorrect.", QgsMessageBar.WARNING)
def saveSetupFile(self, setupObject): setupFilePath = setupObject.setupPath if os.path.isfile(setupFilePath): limboSetupObject = copy.deepcopy(setupObject) limboSetupObject.decimalPlaces = int( self.precComboBox.currentText()) limboSetupObject.marxanPath = self.marxanLineEdit.text() limboSetupObject.inputPath = self.inputLineEdit.text() limboSetupObject.outputPath = self.outputLineEdit.text() limboSetupObject.puPath = self.puLineEdit.text() limboSetupObject.targetPath = self.targLineEdit.text() cluz_setup.checkStatusObjectValues(limboSetupObject) if limboSetupObject.setupStatus == "values_checked": cluz_setup.createAndCheckCLUZFiles(limboSetupObject) setupObject = copy.deepcopy(limboSetupObject) if setupObject.setupStatus == "files_checked": cluz_setup.updateClzSetupFile(setupObject) setupPathLabelText = "Setup file location: " + str( setupFilePath) self.setupPathLabel.setText(setupPathLabelText) cluz_setup.checkAddPULayer(setupObject) elif setupFilePath == "blank": qgis.utils.iface.messageBar().pushMessage( "No CLUZ setup file name", "The CLUZ setup file name has not been set. Please use the Save As... option instead.", QgsMessageBar.WARNING) else: qgis.utils.iface.messageBar().pushMessage( "CLUZ setup file name error", "The current CLUZ setup file path is incorrect.", QgsMessageBar.WARNING)
def runMarxan(self, setupObject, targetsMetAction): numIterString = self.iterLineEdit.text() numRunString = self.runLineEdit.text() outputName = str(self.outputLineEdit.text()) setupObject.outputName = outputName if self.boundCheckBox.isChecked(): blmValueString = self.boundLineEdit.text() else: blmValueString = "0" missingPropString = self.missingLineEdit.text() initialPropString = self.propLineEdit.text() extraOutputsBool = self.extraCheckBox.isChecked() if self.parallelCheckBox.isChecked(): numParallelAnalyses = int(self.parallelListWidget.selectedItems()[0].text()) else: numParallelAnalyses = 1 checkMarxanInputValuesBool = cluz_functions2.checkMarxanInputValuesBool(numIterString, numRunString, blmValueString, missingPropString, initialPropString, numParallelAnalyses) if checkMarxanInputValuesBool == True: numIter = int(numIterString) numRun = int(numRunString) blmValue = float(blmValueString) missingProp = float(missingPropString) initialProp = float(initialPropString) cluz_functions2.createSpecDatFile(setupObject) setupObject = cluz_functions2.marxanUpdateSetupObject(setupObject, outputName, numIter, numRun, blmValue, extraOutputsBool, missingProp, initialProp) cluz_setup.updateClzSetupFile(setupObject) self.close() if numParallelAnalyses == 1: bestOutputFile, summedOutputFile = launchSingleMarxanAnalysis(setupObject, numIter, numRun, blmValue, missingProp, initialProp, outputName, extraOutputsBool) else: bestOutputFile, summedOutputFile = launchMultiMarxanAnalysis(setupObject, numIter, numRun, blmValue, missingProp, initialProp, outputName, extraOutputsBool, numParallelAnalyses) cluz_functions2.addBestMarxanOutputToPUShapefile(setupObject, bestOutputFile, "Best") cluz_functions2.addSummedMarxanOutputToPUShapefile(setupObject, summedOutputFile, "SF_Score") cluz_display.reloadPULayer(setupObject) cluz_display.removePreviousMarxanLayers() bestLayerName = "Best (" + outputName + ")" summedLayerName = "SF_Score (" + outputName + ")" cluz_display.displayBestOutput(setupObject, "Best", bestLayerName) cluz_display.displayGraduatedLayer(setupObject, "SF_Score", summedLayerName, 1) #1 is SF legend code targetsMetAction.setEnabled(True)
def saveAsSetupFile(self, setupObject): newSetupFilePath = QFileDialog.getSaveFileName(self, 'Save new CLUZ setup file', '*.clz') if newSetupFilePath != "": setupObject.decimalPlaces = int(self.precComboBox.currentText()) setupObject.marxanPath = self.marxanLineEdit.text() setupObject.inputPath = self.inputLineEdit.text() setupObject.outputPath = self.outputLineEdit.text() setupObject.puPath = self.puLineEdit.text() setupObject.targetPath = self.targLineEdit.text() setupObject.setupPath = newSetupFilePath cluz_setup.checkStatusObjectValues(setupObject) if setupObject.setupStatus == "values_checked": cluz_setup.createAndCheckCLUZFiles(setupObject) if setupObject.setupStatus == "files_checked": cluz_setup.updateClzSetupFile(setupObject) setupPathLabelText = "Setup file location: " + str(newSetupFilePath) self.setupPathLabel.setText(setupPathLabelText) cluz_setup.checkAddPlanningUnit(setupObject) else: qgis.utils.iface.messageBar().pushMessage("CLUZ setup file name error", "The current CLUZ setup file path is incorrect.", QgsMessageBar.WARNING)