FreeCAD "UnicodeEncodeError: 'ascii' codec can't encode characters in position 23-25" 錯誤解決辦法

使用FreeCAD構建了開口銷的幾何模型之後使用FEM進行簡單有限元仿真,出現了下面錯誤:


Unexpected error when writing CalculiX input file: <type 'exceptions.UnicodeEncodeError'>
Traceback (most recent call last):
  File "D:\Applications\FreeCAD 0.17\Mod\Fem\femtools\ccxtools.py", line 680, in run
    self.write_inp_file()
  File "D:\Applications\FreeCAD 0.17\Mod\Fem\femtools\ccxtools.py", line 550, in write_inp_file
    self.inp_file_name = inp_writer.write_calculix_input_file()
  File "D:\Applications\FreeCAD 0.17\Mod\Fem\femsolver\calculix\writer.py", line 76, in write_calculix_input_file
    self.write_calculix_one_input_file()
  File "D:\Applications\FreeCAD 0.17\Mod\Fem\femsolver\calculix\writer.py", line 165, in write_calculix_one_input_file
    self.write_footer(inpfile)
  File "D:\Applications\FreeCAD 0.17\Mod\Fem\femsolver\calculix\writer.py", line 1094, in write_footer
    f.write('**   file name     --> ' + os.path.basename(FreeCAD.ActiveDocument.FileName) + '\n')
UnicodeEncodeError: 'ascii' codec can't encode characters in position 23-25: ordinal not in range(128)

原因是構建的實體命名使用了中文命名。FreeCAD使用PySide開發,PySide的API又兼容PyQt4,而Qt對中文的支持一直都不好,根據這個猜想,將實體名字修改爲英文的就可以了,最終結果如下圖

這裏寫圖片描述

使用FreeCAD的小技巧:

打開窗口【Report view】和【Python console】,很多信息都能顯示在裏面,出現錯誤容易排查

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章