1
This commit is contained in:
1 parent
5742da180e
commit
b279fdac97
1 file changed
+57
-2
+57
-2
@@ -1,5 +1,5 @@
|
||||
import os, sys, time, bpy, bmesh, shutil,requests,json
|
||||
import platform
|
||||
import platform,oss2
|
||||
if platform.system() == 'Windows':
|
||||
sys.path.append('e:\\libs\\')
|
||||
else:
|
||||
@@ -66,8 +66,63 @@ def cal_weight(obj, size):
|
||||
print(f'{size/10}cm:体积 {model_info["volume"]}cm³, 克重 {model_info["weight"]}g')
|
||||
return model_info["weight"]
|
||||
|
||||
def down_obj_from_oss(workdir, pid, action):
|
||||
if os.path.exists(os.path.join(workdir, action, pid)):
|
||||
print(f'目录{os.path.join(workdir, action, pid)}已存在,跳过')
|
||||
return
|
||||
else:
|
||||
os.makedirs(os.path.join(workdir, action, pid))
|
||||
|
||||
# 根据前缀获取文件列表
|
||||
prefix = f'objs/{action}/{pid}/'
|
||||
filelist = oss2.ObjectIteratorV2(config.oss_bucket, prefix=prefix)
|
||||
print('正在下载:', prefix)
|
||||
obj_filename = ""
|
||||
dirPath = os.path.join(workdir, action, pid)
|
||||
for file in filelist:
|
||||
filename = file.key.split('/')[-1]
|
||||
if filename.endswith('.obj'):
|
||||
obj_filename = filename
|
||||
# print('正在下载:', file.key)
|
||||
localfile = os.path.join(workdir, action, pid, filename)
|
||||
#判断目录里是否已经存在obj文件了
|
||||
isObjFile = False
|
||||
isJpgFile = False
|
||||
isMtlFile = False
|
||||
for file in os.listdir(dirPath):
|
||||
if file.endswith('.obj'):
|
||||
isObjFile = True
|
||||
|
||||
if file.endswith('.jpg'):
|
||||
isJpgFile = True
|
||||
|
||||
if file.endswith('.mtl'):
|
||||
isMtlFile = True
|
||||
|
||||
|
||||
if localfile.endswith('.obj'):
|
||||
if isObjFile and os.path.exists(localfile):
|
||||
print(f'目录{dirPath}已存在obj文件,跳过')
|
||||
continue
|
||||
|
||||
if localfile.endswith('.jpg'):
|
||||
if isJpgFile and os.path.exists(localfile):
|
||||
print(f'目录{dirPath}已存在jpg文件,跳过')
|
||||
continue
|
||||
|
||||
if localfile.endswith('.mtl'):
|
||||
if isMtlFile and os.path.exists(localfile):
|
||||
print(f'目录{dirPath}已存在mtl文件,跳过')
|
||||
continue
|
||||
|
||||
|
||||
config.oss_bucket.get_object_to_file(file.key, localfile)
|
||||
|
||||
return obj_filename
|
||||
|
||||
|
||||
def main(action, pid, sizes,orderId=0):
|
||||
libs.down_obj_from_oss(config.workdir, pid, action)
|
||||
down_obj_from_oss(config.workdir, pid, action)
|
||||
obj = reload_obj(pid, action)
|
||||
|
||||
bpy.ops.object.transform_apply(location=True, rotation=True, scale=True)
|
||||
|
||||
Reference in new issue
Block a user