BOM is byte order mark and it was crashing ConfigParser:
Traceback (most recent call last):
File
"/home/przemo/software/FreeCAD/build/Mod/Fem/MechanicalMaterial.py",
line 109, in setEdit
taskd = _MechanicalMaterialTaskPanel(self.Object)
File
"/home/przemo/software/FreeCAD/build/Mod/Fem/MechanicalMaterial.py",
line 138, in __init__
self.import_materials()
File
"/home/przemo/software/FreeCAD/build/Mod/Fem/MechanicalMaterial.py",
line 264, in import_materials
self.add_mat_dir(user_mat_dirname,
":/icons/preferences-general.svg")
File
"/home/przemo/software/FreeCAD/build/Mod/Fem/MechanicalMaterial.py",
line 245, in add_mat_dir
self.materials[a_path] = Material.importFCMat(a_path)
File "/home/przemo/software/FreeCAD/build/Mod/Material/Material.py",
line 57, in importFCMat
Config.read(fileName)
File "/usr/lib64/python2.7/ConfigParser.py", line 305, in read
self._read(fp, filename)
File "/usr/lib64/python2.7/ConfigParser.py", line 512, in _read
raise MissingSectionHeaderError(fpname, lineno, line)
<class 'ConfigParser.MissingSectionHeaderError'>: File contains no
section headers.
file: /home/przemo/.FreeCAD/Materials/AlMg3F24.FCMat, line: 1
'\xef\xbb\xbf; AlMg3F24 - 3.3535.26 - DIN 1725\n'
Reported-by: sgrogan
Signed-off-by: Przemo Firszt <przemo@firszt.eu>
ConfigParser changes option capital letters in keys to small letters.
That commit changes it to generate verbatim keys as read from FCMat
files. Also Section names are no longer used to generate material
dictionary.
Signed-off-by: Przemo Firszt <przemo@firszt.eu>
The "-->choose Material" has been replaced with a not defined material.
That makes setting/retrieving material to/from the object much easier
and allows user to have a "not defined" material. Previously it wasn't
possible to change i.e. form Steel to "not defined".
Signed-off-by: Przemo Firszt <przemo@firszt.eu>
Materal editor is now funcional, abeit not complete. Can be used to
create and save new cards. Lauch from within FreeCAD with
import MaterialEditor; MaterialEditor.openEditor()