Ejemplo n.º 1
0
    def calculixFinished(self, exitCode):
        print "calculixFinished()", exitCode
        print self.Calculix.state()

        # Restore previous cwd
        QtCore.QDir.setCurrent(self.cwd)

        self.printCalculiXstdout()
        self.Timer.stop()

        self.femConsoleMessage("Calculix done!", "#00AA00")

        self.form.pushButton_generate.setText("Re-run Calculix")
        print "Loading results...."
        self.femConsoleMessage("Loading result sets...")
        self.form.label_Time.setText('Time: {0:4.1f}: '.format(time.time() -
                                                               self.Start))
        fea = FemTools()
        fea.purge_results()
        fea.reset_mesh_color()
        fea.reset_mesh_deformation()
        if os.path.isfile(self.base_name + '.frd'):
            QApplication.setOverrideCursor(Qt.WaitCursor)
            ccxFrdReader.importFrd(self.base_name + '.frd',
                                   FemGui.getActiveAnalysis())
            QApplication.restoreOverrideCursor()
            self.femConsoleMessage("Loading results done!", "#00AA00")
        else:
            self.femConsoleMessage(
                "Loading results failed! Results file doesn\'t exist",
                "#FF0000")
        self.form.label_Time.setText('Time: {0:4.1f}: '.format(time.time() -
                                                               self.Start))
Ejemplo n.º 2
0
    def calculixFinished(self, exitCode):
        print ("calculixFinished() {}".format(exitCode))
        print (self.Calculix.state())

        # Restore previous cwd
        QtCore.QDir.setCurrent(self.cwd)

        self.printCalculiXstdout()
        self.Timer.stop()

        self.femConsoleMessage("Calculix done!", "#00AA00")

        self.form.pb_run_ccx.setText("Re-run CalculiX")
        self.femConsoleMessage("Loading result sets...")
        self.form.l_time.setText('Time: {0:4.1f}: '.format(time.time() - self.Start))
        fea = FemTools()
        fea.reset_all()
        frd_result_file = os.path.splitext(self.inp_file_name)[0] + '.frd'
        if os.path.isfile(frd_result_file):
            QApplication.setOverrideCursor(Qt.WaitCursor)
            ccxFrdReader.importFrd(frd_result_file, FemGui.getActiveAnalysis())
            QApplication.restoreOverrideCursor()
            self.femConsoleMessage("Loading results done!", "#00AA00")
        else:
            self.femConsoleMessage("Loading results failed! Results file doesn\'t exist", "#FF0000")
        self.form.l_time.setText('Time: {0:4.1f}: '.format(time.time() - self.Start))
Ejemplo n.º 3
0
 def restore_initial_result_dialog(self):
     FreeCAD.FEM_dialog = {
         "results_type": "None",
         "show_disp": False,
         "disp_factor": 0,
         "disp_factor_max": 100
     }
     fea = FemTools()
     fea.reset_mesh_color()
     fea.reset_mesh_deformation()
Ejemplo n.º 4
0
    def check_prerequisites_helper(self):
        self.Start = time.time()
        self.femConsoleMessage("Check dependencies...")
        self.form.l_time.setText('Time: {0:4.1f}: '.format(time.time() - self.Start))

        fea = FemTools()
        fea.update_objects()
        message = fea.check_prerequisites()
        if message != "":
            QtGui.QMessageBox.critical(None, "Missing prerequisit(s)", message)
            return False
        return True
Ejemplo n.º 5
0
 def write_input_file_handler(self):
     QApplication.restoreOverrideCursor()
     if self.check_prerequisites_helper():
         QApplication.setOverrideCursor(Qt.WaitCursor)
         self.base_name = ""
         fea = FemTools()
         fea.update_objects()
         fea.write_inp_file()
         if fea.base_name != "":
             self.base_name = fea.base_name
             self.femConsoleMessage("Write completed.")
             self.form.pushButton_edit.setEnabled(True)
             self.form.pushButton_generate.setEnabled(True)
         else:
             self.femConsoleMessage("Write .inp file failed!", "#FF0000")
         QApplication.restoreOverrideCursor()
Ejemplo n.º 6
0
 def write_input_file_handler(self):
     QApplication.restoreOverrideCursor()
     if self.check_prerequisites_helper():
         QApplication.setOverrideCursor(Qt.WaitCursor)
         self.inp_file_name = ""
         fea = FemTools()
         fea.set_analysis_type(self.analysis_object.AnalysisType)
         fea.update_objects()
         fea.write_inp_file()
         if fea.inp_file_name != "":
             self.inp_file_name = fea.inp_file_name
             self.femConsoleMessage("Write completed.")
             self.form.pb_edit_inp.setEnabled(True)
             self.form.pb_run_ccx.setEnabled(True)
         else:
             self.femConsoleMessage("Write .inp file failed!", "#FF0000")
         QApplication.restoreOverrideCursor()
Ejemplo n.º 7
0
    def Activated(self):
        def load_results(ret_code):
            if ret_code == 0:
                self.fea.load_results()
                self.show_results_on_mesh()
            else:
                print("CalculiX failed ccx finished with error {}".format(
                    ret_code))

        self.fea = FemTools()
        self.fea.reset_all()
        message = self.fea.check_prerequisites()
        if message:
            QtGui.QMessageBox.critical(None, "Missing prerequisite", message)
            return
        self.fea.finished.connect(load_results)
        QtCore.QThreadPool.globalInstance().start(self.fea)
Ejemplo n.º 8
0
    def calculixFinished(self, exitCode):
        print ("calculixFinished() {}".format(exitCode))
        print (self.Calculix.state())

        # Restore previous cwd
        QtCore.QDir.setCurrent(self.cwd)

        self.printCalculiXstdout()
        self.Timer.stop()

        self.femConsoleMessage("CalculiX done!", "#00AA00")

        self.form.pb_run_ccx.setText("Re-run CalculiX")
        self.femConsoleMessage("Loading result sets...")
        self.form.l_time.setText('Time: {0:4.1f}: '.format(time.time() - self.Start))
        fea = FemTools()
        fea.reset_all()
        fea.inp_file_name = self.inp_file_name
        QApplication.setOverrideCursor(Qt.WaitCursor)
        fea.load_results()
        QApplication.restoreOverrideCursor()
        self.form.l_time.setText('Time: {0:4.1f}: '.format(time.time() - self.Start))
Ejemplo n.º 9
0
 def none_selected(self, state):
     FreeCAD.FEM_dialog["results_type"] = "None"
     self.set_result_stats("mm", 0.0, 0.0, 0.0)
     fea = FemTools()
     fea.reset_mesh_color()
Ejemplo n.º 10
0
 def Activated(self):
     fea = FemTools()
     fea.purge_results()
     fea.reset_mesh_color()
     fea.reset_mesh_deformation()
Ejemplo n.º 11
0
 def Activated(self):
     fea = FemTools()
     fea.reset_all()
Ejemplo n.º 12
0
    def Activated(self):
        fea = FemTools()
        fea.reset_all()

        self.hide_meshes_show_parts_constraints()