Salome HOME
Fix to allow Cleaner and SurfOpt to deal with directory with spaces
[modules/smesh.git] / src / Tools / MGCleanerPlug / MGCleanerMonPlugDialog.py
index 5bcb15973aa114edd49d4ba192061fedf7e54e85..c56cb30f0ffeb3b423b467e8729d9353fc538f05 100644 (file)
@@ -339,12 +339,9 @@ class MGCleanerMonPlugDialog(Ui_MGCleanerPlugDialog,QWidget):
   def getResumeData(self, separator="\n"):
     text=""
     if self.RB_Fix1.isChecked():
-      CheckOrFix="fix1pass"
+      CheckOrFix="mode_fix"
     else:
-      if self.RB_Fix2.isChecked():
-        CheckOrFix="fix2pass"
-      else:
-        CheckOrFix="check"
+      CheckOrFix="mode_check"
     text+="CheckOrFix="+CheckOrFix+separator
     text+="PreserveTopology="+str(self.CB_PreserveTopology.isChecked())+separator
     text+="FillHoles="+str(self.CB_FillHoles.isChecked())+separator
@@ -377,11 +374,9 @@ class MGCleanerMonPlugDialog(Ui_MGCleanerPlugDialog,QWidget):
         tit,value=lig.split("=")
         if tit=="CheckOrFix":
           self.RB_Fix1.setChecked(False)
-          self.RB_Fix2.setChecked(False)
           self.RB_Check.setChecked(False)
-          if value=="fix1pass": self.RB_Fix1.setChecked(True)
-          if value=="fix2pass": self.RB_Fix2.setChecked(True)
-          if value=="check": self.RB_Check.setChecked(True)
+          if value=="mode_fix": self.RB_Fix1.setChecked(True)
+          if value=="mode_check": self.RB_Check.setChecked(True)
         if tit=="PreserveTopology": self.CB_PreserveTopology.setChecked(value=="True")
         if tit=="FillHoles": self.CB_FillHoles.setChecked(value=="True")
         if tit=="MinHoleSize": self.SP_MinHoleSize.setProperty("text", value)
@@ -454,16 +449,17 @@ class MGCleanerMonPlugDialog(Ui_MGCleanerPlugDialog,QWidget):
     if fd.exec_():
       infile = fd.selectedFiles()[0]
       self.LE_MeshFile.setText(infile)
-      self.fichierIn=str(infile).encode("latin-1")
+      self.fichierIn=str(infile)
       self.MeshIn=""
       self.LE_MeshSmesh.setText("")
+      self.__selectedMesh=None
 
   def setParamsFileName(self):
     fd = QFileDialog(self, "select a file", self.LE_ParamsFile.text(), "dat Files (*.dat);;All Files (*)")
     if fd.exec_():
       infile = fd.selectedFiles()[0]
       self.LE_ParamsFile.setText(infile)
-      self.paramsFile=str(infile).encode("latin-1")
+      self.paramsFile=str(infile)
 
   def meshFileNameChanged(self):
     self.fichierIn=str(self.LE_MeshFile.text())
@@ -557,18 +553,14 @@ class MGCleanerMonPlugDialog(Ui_MGCleanerPlugDialog,QWidget):
     self.commande="mg-cleaner.exe"
     verbosity=str(self.SP_Verbosity.value())
     self.commande+=" --verbose " + verbosity
-    self.commande+=" --in " + self.fichierIn
-    #print "self.fichierIn",self.fichierIn,type(self.fichierIn)
+    self.commande+=' --in "' + self.fichierIn+'"'
     deb=os.path.splitext(str(self.fichierIn))
     self.fichierOut=deb[0] + "_fix.mesh"
-    self.commande+=" --out "+self.fichierOut
+    self.commande+=' --out "'+self.fichierOut+'"'
     if self.RB_Fix1.isChecked():
-      self.commande+=" --fix1pass"
+      self.commande+=" --mode fix"
     else:
-      if self.RB_Fix2.isChecked():
-        self.commande+=" --fix2pass"
-      else:
-        self.commande+=" --check"
+      self.commande+=" --mode check"
     if self.CB_PreserveTopology.isChecked():
       self.commande+=" --topology respect"
     else:
@@ -581,7 +573,7 @@ class MGCleanerMonPlugDialog(Ui_MGCleanerPlugDialog,QWidget):
       self.commande+=" --resolution_length " + self.SP_toStr(self.SP_ResolutionLength)
     self.commande+=" --folding_angle " + str(self.SP_FoldingAngle.value())
     if self.CB_RemeshPlanes.isChecked(): #no remesh default
-      self.commande+=" --remesh_planes"
+      self.commande+=" --remesh_planes yes"
     if not self.CB_ComputedOverlapDistance.isChecked(): #computed default
       self.commande+=" --overlap_distance " + self.SP_toStr(self.SP_OverlapDistance)
     self.commande+=" --overlap_angle " + str(self.SP_OverlapAngle.value())
@@ -590,8 +582,7 @@ class MGCleanerMonPlugDialog(Ui_MGCleanerPlugDialog,QWidget):
 
   def clean(self):
     self.RB_Check.setChecked(False)
-    self.RB_Fix1.setChecked(False)
-    self.RB_Fix2.setChecked(True)
+    self.RB_Fix1.setChecked(True)
     self.CB_PreserveTopology.setChecked(False)
     self.CB_FillHoles.setChecked(False)
     self.CB_RemeshPlanes.setChecked(False)