python - 结合两个 subprocess.run() 命令来提高性能
问题描述
我目前正在使用名为 POV-Ray 的程序渲染乐高模型。该计划的细节与我的问题无关。我正在使用 pythonsubprocess
模块通过 Windows 命令提示符访问 POV-Ray。我的代码有效,但速度很慢。它的工作原理如下:
- 调用可执行文件
LDView.exe
以将乐高模型导出为.pov
POV-Ray 使用的格式。 .pov
执行 POV-Ray 以使用一些预先确定的配置渲染文件。
:
# Declare path executables
ld_view = "C:\\~\LDView64.exe"
pov_ray = "C:\\~\pvengine.exe"
# Export model to .pov file format with specified latitude / longitude / zoom
subprocess.run(
[
ld_view,
os.path.join(model_path, model_name),
"-DefaultLatLong={}".format(config['DefaultLatLong']),
"-DefaultZoom={}".format(config['DefaultZoom']),
"-ExportFile={}_{}.pov".format(config['DefaultLatLong'], config['DefaultZoom']),
])
# Render .pov file to .png file
subprocess.run(
[
pov_ray,
'{}_{}.pov'.format(config['DefaultLatLong'], config['DefaultZoom']),
'+F',
'Output_File_Type={}'.format(config['file_type']),
'-D'
])
但是,这很慢。有什么方法可以结合这两个命令,即不在.pov
结果目录中显式写入文件?
解决方案
推荐阅读
- android - 'package:flutter/src/widgets/will_pop_scope.dart':断言失败:第 135 行 pos 12:'_route == ModalRoute.of(context)':不正确
- go - 致命错误所有 goroutines 都处于休眠状态 - 死锁
- gf - GF 中西班牙语的虚拟语气
- swagger - Swashbuckle swagger:如何在过滤器中添加安全定义?
- datetime - cmd批处理文件检查当前时间是否等于特定时间之一
- php - Xdebug 分析不将日志保存到文件夹
- c++ - HashTable - 链表数组 C++ - 删除函数,删除节点
- regex - fail2ban 中的正则表达式不匹配
- javascript - 如何使用 Javascript 或 ES6 在下面的树视图中设置动态数据
- azure-web-app-service - 在 azure 应用程序中部署后出现 404 Not Found 错误