osg_to_obj.py 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. import os
  2. import sys
  3. import argparse
  4. def main(input_path, output_path):
  5. num = len(input_path) + 1
  6. for root, dirs, files in os.walk(input_path):
  7. for file in files:
  8. if os.path.splitext(file)[-1] in ['.osg']:
  9. if not os.path.exists(os.path.join(output_path, root[num:])):
  10. os.makedirs(os.path.join(output_path, root[num:]))
  11. cmd = r'./OpenSceneGraph-3.6.5-VC2019-64-Release/bin/osgconv.exe/osgconv.exe {osg_input_path} {osg_output_path}'.format(
  12. osg_input_path=os.path.join(root, file),
  13. osg_output_path=os.path.join(output_path, root[num:],
  14. file.replace('osg', 'obj')))
  15. print(cmd)
  16. os.system(cmd)
  17. if __name__ == '__main__':
  18. # if len(sys.argv) == 1:
  19. # print("""
  20. # 功能:osg转obj
  21. # usge:python dds_to_png.py -i input_path -o output_path
  22. # eg: python 4s_script_20220311.py -i /data/slice/data/inputpath -o /data/slice/data/inputpath
  23. # -i --input_path osg输入目录
  24. # -o --output_path obj输出目录
  25. # """)
  26. #
  27. # args = argparse.ArgumentParser()
  28. # args.add_argument('-i', '--input_path', required=True, type=str, help='osg输入目录')
  29. # args.add_argument('-o', '--output_path', required=True, type=str, help='obj输出目录')
  30. #
  31. # # 参数获取
  32. # parse = args.parse_args()
  33. # input_path = parse.input_path
  34. # output_path = parse.output_path
  35. input_path = r'D:\ty_data\漪汾桥-迎泽桥XML'
  36. output_path = r'D:\输出'
  37. main(input_path, output_path)