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 os, sys, time, bpy, bmesh, shutil,requests,json
|
||||||
import platform
|
import platform,oss2
|
||||||
if platform.system() == 'Windows':
|
if platform.system() == 'Windows':
|
||||||
sys.path.append('e:\\libs\\')
|
sys.path.append('e:\\libs\\')
|
||||||
else:
|
else:
|
||||||
@@ -66,8 +66,63 @@ def cal_weight(obj, size):
|
|||||||
print(f'{size/10}cm:体积 {model_info["volume"]}cm³, 克重 {model_info["weight"]}g')
|
print(f'{size/10}cm:体积 {model_info["volume"]}cm³, 克重 {model_info["weight"]}g')
|
||||||
return model_info["weight"]
|
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):
|
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)
|
obj = reload_obj(pid, action)
|
||||||
|
|
||||||
bpy.ops.object.transform_apply(location=True, rotation=True, scale=True)
|
bpy.ops.object.transform_apply(location=True, rotation=True, scale=True)
|
||||||
|
|||||||
Reference in new issue
Block a user