Merge branch 'master' of https://git.vhelio.org/vhelio/vheliotech-freecad
BIN
chaudronnerie/CHO05.FCStd
Normal file
|
Before Width: | Height: | Size: 60 KiB After Width: | Height: | Size: 60 KiB |
|
Before Width: | Height: | Size: 98 KiB After Width: | Height: | Size: 98 KiB |
|
Before Width: | Height: | Size: 10 KiB After Width: | Height: | Size: 10 KiB |
|
Before Width: | Height: | Size: 23 KiB After Width: | Height: | Size: 23 KiB |
BIN
quincaillerie/QIN59.FCStd
Normal file
BIN
quincaillerie/visserie/QIN15.FCStd
Normal file
BIN
quincaillerie/visserie/QIN16.FCStd
Normal file
BIN
quincaillerie/visserie/QIN57.FCStd
Normal file
BIN
quincaillerie/visserie/QIN58.FCStd
Normal file
|
|
@ -24,7 +24,7 @@ def convert_file(file_name, output_format):
|
||||||
if len(obj.Parents) == 0:
|
if len(obj.Parents) == 0:
|
||||||
#print(obj.Label)
|
#print(obj.Label)
|
||||||
root_objects.append(obj)
|
root_objects.append(obj)
|
||||||
if obj.Label == doc.Name:
|
if obj.Label == doc.Name or obj.Label == doc.Name + ' (experimental)':
|
||||||
main_object = obj
|
main_object = obj
|
||||||
|
|
||||||
if main_object is None and len(root_objects) == 1:
|
if main_object is None and len(root_objects) == 1:
|
||||||
|
|
@ -33,6 +33,11 @@ def convert_file(file_name, output_format):
|
||||||
if main_object is None:
|
if main_object is None:
|
||||||
raise Exception("Can't find main object in file " + file_name + " (found " + str(len(root_objects)) + " root object(s), none named like the document " + doc.Name + ")")
|
raise Exception("Can't find main object in file " + file_name + " (found " + str(len(root_objects)) + " root object(s), none named like the document " + doc.Name + ")")
|
||||||
|
|
||||||
|
if 'experimental' in main_object.Label or 'expérimental' in main_object.Label:
|
||||||
|
print('Document ' + doc.Name + ' is marked as experimental and will be ignored')
|
||||||
|
close_all_docs()
|
||||||
|
return
|
||||||
|
|
||||||
secondary_objects = []
|
secondary_objects = []
|
||||||
code_obj = doc.getObjectsByLabel('Code_Tube_Draft')
|
code_obj = doc.getObjectsByLabel('Code_Tube_Draft')
|
||||||
if len(code_obj) == 1:
|
if len(code_obj) == 1:
|
||||||
|
|
@ -67,11 +72,7 @@ def convert_file(file_name, output_format):
|
||||||
|
|
||||||
close_all_docs()
|
close_all_docs()
|
||||||
|
|
||||||
def convert_assembly(file_name, output_format):
|
def export_assembly(doc, file_name, output_format):
|
||||||
print("Exporting assembly " + file_name + "...")
|
|
||||||
|
|
||||||
doc = App.open(project_folder + '/' + file_name)
|
|
||||||
|
|
||||||
root_objects = []
|
root_objects = []
|
||||||
main_object = None
|
main_object = None
|
||||||
|
|
||||||
|
|
@ -110,17 +111,27 @@ def convert_assembly(file_name, output_format):
|
||||||
else:
|
else:
|
||||||
ImportGui.export([main_object], output_path)
|
ImportGui.export([main_object], output_path)
|
||||||
|
|
||||||
|
def convert_assembly(file_name, output_format):
|
||||||
|
print("Exporting assembly " + file_name + "...")
|
||||||
|
doc = App.open(project_folder + '/' + file_name)
|
||||||
|
export_assembly(doc, file_name, output_format)
|
||||||
close_all_docs()
|
close_all_docs()
|
||||||
|
|
||||||
def export_configuration(doc, config_name, output_filename):
|
def export_configuration(file_name, config_name, output_filename, output_format):
|
||||||
print('Generating assembly for configuration '+config_name+'...')
|
print('Generating assembly for configuration '+config_name+'...')
|
||||||
|
|
||||||
|
doc = App.open(project_folder + '/' + file_name)
|
||||||
|
|
||||||
Gui.Selection.clearSelection()
|
Gui.Selection.clearSelection()
|
||||||
Gui.Selection.addSelection('vheliotech','Model','Configurations.'+doc.getObjectsByLabel(config_name)[0].Name+'.')
|
Gui.Selection.addSelection('vheliotech','Model','Configurations.'+doc.getObjectsByLabel(config_name)[0].Name+'.')
|
||||||
Gui.runCommand('Asm4_applyConfiguration')
|
Gui.runCommand('Asm4_applyConfiguration')
|
||||||
Gui.Selection.clearSelection()
|
Gui.Selection.clearSelection()
|
||||||
|
|
||||||
doc.saveAs(assemblies_output_folder + '/' + output_filename + '.FCStd')
|
export_assembly(doc, output_filename, output_format)
|
||||||
|
|
||||||
|
#doc.saveAs(assemblies_output_folder + '/' + output_filename + '.FCStd')
|
||||||
|
|
||||||
|
close_all_docs()
|
||||||
|
|
||||||
try:
|
try:
|
||||||
folders = [
|
folders = [
|
||||||
|
|
@ -136,14 +147,12 @@ try:
|
||||||
print(source_path)
|
print(source_path)
|
||||||
convert_file(source_path, 'step')
|
convert_file(source_path, 'step')
|
||||||
|
|
||||||
convert_assembly('vheliotech.FCStd', 'step')
|
#convert_assembly('vheliotech.FCStd', 'step')
|
||||||
|
|
||||||
'''doc = App.open(project_folder + '/vheliotech.FCStd')
|
export_configuration('vheliotech.FCStd', 'Config_Integrale', 'vheliotech-integral', 'step')
|
||||||
export_configuration(doc, 'Config_Integrale', 'vheliotech-config-integrale')
|
export_configuration('vheliotech.FCStd', 'Config_Solaire', 'vheliotech-solaire', 'step')
|
||||||
export_configuration(doc, 'Config_Solaire', 'vheliotech-config-solaire')
|
export_configuration('vheliotech.FCStd', 'Config_Motorisee', 'vheliotech-motorise', 'step')
|
||||||
export_configuration(doc, 'Config_Motorisee', 'vheliotech-config-motorisee')
|
export_configuration('vheliotech.FCStd', 'Config_Basique', 'vheliotech-basique', 'step')
|
||||||
export_configuration(doc, 'Config_Basique', 'vheliotech-config-basique')
|
|
||||||
close_all_docs()'''
|
|
||||||
|
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
print(e)
|
print(e)
|
||||||
|
|
|
||||||