|
|
|
|
@ -209,6 +209,10 @@ def read_pids_from_json(pid_file):
@@ -209,6 +209,10 @@ def read_pids_from_json(pid_file):
|
|
|
|
|
return [], {} |
|
|
|
|
|
|
|
|
|
list_model_info = [] |
|
|
|
|
summary = data.get('summary') |
|
|
|
|
print("summary=", summary) |
|
|
|
|
selected_machine = summary['selected_machine'] |
|
|
|
|
print("selected_machine=", selected_machine) |
|
|
|
|
# 处理每个模型 |
|
|
|
|
for model in data.get('models', []): |
|
|
|
|
obj_name = model.get('file_name', '') |
|
|
|
|
@ -227,7 +231,7 @@ def read_pids_from_json(pid_file):
@@ -227,7 +231,7 @@ def read_pids_from_json(pid_file):
|
|
|
|
|
) |
|
|
|
|
list_model_info.append(model_info) |
|
|
|
|
|
|
|
|
|
return list_model_info, data |
|
|
|
|
return list_model_info, data, selected_machine |
|
|
|
|
|
|
|
|
|
def download_data_by_json(model_info, workdir, oss_client ): |
|
|
|
|
try: |
|
|
|
|
@ -274,20 +278,23 @@ def download_datas_by_json(pid_file, workdir, oss_config):
@@ -274,20 +278,23 @@ def download_datas_by_json(pid_file, workdir, oss_config):
|
|
|
|
|
oss_client = get_oss_client(oss_config) |
|
|
|
|
|
|
|
|
|
# json_path = os.path.join(workdir, "3DPrintLayout.json") |
|
|
|
|
json_path = pid_file |
|
|
|
|
json_path = os.path.join(workdir, f"{pid_file}.json") |
|
|
|
|
|
|
|
|
|
# 读取所有PID |
|
|
|
|
list_model_info, data = read_pids_from_json(json_path) |
|
|
|
|
list_model_info, data, selected_machine = read_pids_from_json(json_path) |
|
|
|
|
print(f"从文件读取了 {len(list_model_info)} 个PID") |
|
|
|
|
need_transform = True |
|
|
|
|
if selected_machine=="大机型" : |
|
|
|
|
need_transform = False |
|
|
|
|
# 批量下载 |
|
|
|
|
for model_info in list_model_info: |
|
|
|
|
print(f"开始下载PID: {model_info}") |
|
|
|
|
download_data_by_json(model_info, workdir, oss_client) |
|
|
|
|
download_data_by_json(model_info, args.workdir, oss_client,) |
|
|
|
|
|
|
|
|
|
return data |
|
|
|
|
return data, need_transform |
|
|
|
|
|
|
|
|
|
def download_transform_save_by_json(pid_file, workdir, oss_config): |
|
|
|
|
layout_data = download_datas_by_json(pid_file, workdir, oss_config) |
|
|
|
|
layout_data, need_transform = download_datas_by_json(pid_file, workdir, oss_config) |
|
|
|
|
|
|
|
|
|
original_obj_pid_dir = workdir |
|
|
|
|
cache_type_setting_dir = os.path.join(workdir, "arrange") |
|
|
|
|
@ -295,7 +302,8 @@ def download_transform_save_by_json(pid_file, workdir, oss_config):
@@ -295,7 +302,8 @@ def download_transform_save_by_json(pid_file, workdir, oss_config):
|
|
|
|
|
|
|
|
|
|
print(f"original_obj_pid_dir={original_obj_pid_dir}, cache_type_setting_dir={cache_type_setting_dir}") |
|
|
|
|
|
|
|
|
|
transform_save(layout_data, original_obj_pid_dir, cache_type_setting_dir) |
|
|
|
|
if need_transform: |
|
|
|
|
transform_save(layout_data, original_obj_pid_dir, cache_type_setting_dir) |
|
|
|
|
|
|
|
|
|
def transform_save(layout_data, original_obj_pid_dir, cache_type_setting_dir): |
|
|
|
|
meshes = [] |
|
|
|
|
@ -351,4 +359,4 @@ if __name__ == "__main__":
@@ -351,4 +359,4 @@ if __name__ == "__main__":
|
|
|
|
|
args = parser.parse_args() |
|
|
|
|
|
|
|
|
|
download_transform_save_by_json(args.pid_file, args.workdir, args.oss_config) |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|