assimp批量转模型_IGS模型批量转换成STL模型
背景:做配载仪时需要批量的将IGS模型转换成STL模型
用到的方法:方法1:使用3D-tool或者其他工具进行转换
方法2:通过python使用FreeCAD的接口批量转换(当时师弟写的程序)
FreeCAD
FreeCAD是一个基于OpenCASCADE的开源CAD/CAE工具,FreeCAD 是多平台的,可用于 Windows、Mac OS X+ 以及 Linux。https://www.freecadweb.org/www.freecadweb.orghttps://www.freecadweb.org/www.freecadweb.org
测试平台:windows
步骤:安装FreeCAD
查看FreeCAD对应python版本号(x86 还是 x64),然后下载安装对应python版本
写python程序
1.安装FreeCAD比较简单,直接官网下载exe即可
2.查看python版本
安装完成后,默认不显示python脚本
通过View->Panels->python console打开python控制台
python控制台还可以学习freeCAD 的pythonAPI
比如我通过菜单打开了一个igs文件,然后导出stl 控制台中给出了相关的提示
3. 安装python
4. 写python脚本
使用VS code打开igs2stl.py文件,编辑代码
引入FreeCAD 包
import FreeCAD
运行,如果成功的话显示版本号:
5.完善Python脚本,打开igs文件所在的文件夹然后开始批量转换STL
代码如下:
# -*- coding: utf-8 -*-
#precision=input("Please input precision. default:40 :\n")
precision=40
if not precision:
precision=40
else:
precision=float(precision)
import sys
#sys.path.append('\\win32')
import FreeCAD,Part,os
import Mesh
import tkinter as tk
from tkinter import filedialog
folder=filedialog.askdirectory()
# first we check for filenames that contain .stp, .step, .igs or .iges
cadfiles = []
for f in os.listdir(folder):
for ext in [".stp", ".step", ".igs", ".iges"]:
if f.lower().endswith(ext):
cadfiles.append((folder+os.sep+f,ext))
break
if not cadfiles:
print ("No step or iges files found in the given folder")
sys.exit()
for f,ext in cadfiles:
#f=f.decode('gbk')
s = Part.read(f)
stl = f.replace(ext,'.stl')
stl=stl.encode('utf-8')
m=Mesh.Mesh()
m.addFacets(s.tessellate(precision))
mat=FreeCAD.Matrix()
mat.scale(1/1000.0,1/1000.0,1/1000.0)
m.transform(mat)
m.write(stl)
print("finished")
运行结果:
6.善后工作
转换我们用到Mesh和Part模块,所以可以删除一些不必要的模块及DLL,不然整个包特别打
拷贝整个安装目录到自己的文件夹,一遍删除dll一遍运行,如果出错就后退
清理前大概1.65G 删除无关模块后,大概100M
以Mod文件夹为例
删除后就剩2个文件夹
7.现在程序可以独立运行了,不再依赖于FreeCAD的安装包,可以用python做任何想做的事,然后发布成exe。深藏功与名
注意:python版本要和FreeCAD的对应
如果转换后的STL模型有问题,可以用Netfabb软件进行修复,支持批量修复及导出,导出后文件名会统一添加(repaired),写个python脚本批量重命名即可,见参考目录
使用FreeCAD批量处理省力多了,感谢小师弟,以前我都是一个个保存,经常100+文件 眼泪 TT
本文是以IGS转STL模型为例,同样支持其他类型,大家可以按需修改,如下图所示
参考:
开源免费freeCAD:https://wiki.freecadweb.org/Feature_listwiki.freecadweb.org
免费的3d-tool viewer:3D und 2D CAD Viewer und 3D-Konverterwww.3d-tool.de
其他的一些转换软件:The Best STL File Converter Tools | All3DPall3dp.com
python脚本批量重命名:刘春雷:python 批量重命名zhuanlan.zhihu.com
assimp批量转模型_IGS模型批量转换成STL模型相关推荐
- 将训练好的pytorch模型的pth文件转换成onnx模型(亲测成功)
将训练好的pytorch模型的pth文件转换成onnx模型(亲测成功) 模型转换 声明:本文原创,未经许可严禁转载,原文地址https://blog.csdn.net/hutao1030813002/ ...
- er图转换成关系模型的例题_有关数据库系统的练习题 E-R图的关系画图转换,,急需 谢谢了...
展开全部 你看62616964757a686964616fe58685e5aeb931333332643239下下边的例子,你的问题就可以解决了. 设某商业集团数据库中有三个实体集.一是"商 ...
- Unity将内部模型转换成stl格式模型,用于3D打印机进行打印
本章我们一起来看下怎样将unity中的fbx模型转成stl模型并且保存到本地. 原理:stl模型都是由三角面组成的,只要我们了解stl文件的格式,就能够轻松的将fbx模型转换成stl. 1.先获取到f ...
- sketchup 图片转模型_不用CAD描图迅速将图片转换成su模型
原标题:不用CAD描图迅速将图片转换成su模型 首先上图,说明一下大概的流程: 1.[ps阶段]首先选取一副木雕图片,背景为单色最佳.如果不是单色,则需要ps一下,将背景转换成白色,这个过程使用魔术棒 ...
- maya多边形建模怎样做曲面_maya将曲面模型转换成多边形模型
在maya中,曲面建模跟多边形建模各有各的优势,但现在建模一般是以多边形建模为主.很多模型用曲面做很简单,用多边形做就会显得有点复杂,那么如果能够将曲面模型转,换成多边形模型就好了. 1.双击打开ma ...
- 将传统的照片在Autodesk® 123D™ Catch中转换成3D模型
将传统的照片在Autodesk® 123D™ Catch中转换成3D模型 http://www.douban.com/group/Catch123D/ Autodesk 123D Catch 如何进行 ...
- darknet cpp weights模型转换成ONNX模型
整理不易,如果觉得有用,记得点赞收藏和分享哦 1. 下载转换需要的代码文件 在下面地址下载代码文件 https://gitee.com/liangjiaxi2019/pytorch-YOLOv4 2. ...
- python 文件夹中的文件批量处理 高通道tif图片转换成jpg格式
在数据集的制作中,往往涉及到 文件夹中文件的批量处理操作,而首要的任务便是将获得的数据进行重命名以方便批量读取,随后再进行操作. 一.文件批量重命名 文件夹的批量处理操作关键在于用os库的os.lis ...
- 【地平线开发板 模型转换】将pytorch生成的onnx模型转换成.bin模型
文章目录 1 获取onnx模型 2 启动docker容器 3 onnx模型检查 3.1 为什么要检查? 3.2 如何操作 4 图像数据预处理 4.1 一些问题的思考 4.2 图片挑选与放置 4.2 使 ...
最新文章
- java中 resource_Java从Resource中读取文本文件
- php程序员面试题(持续补充,偏中级面试题)
- [痛并快乐着 国外开发者总结欧美游戏坑钱指南] 讀後感想
- Python练习题:批量删除多个文件夹内的相同文件
- 华为擎云w510_苹果 iPhone 12 全家桶谍照曝光;华为台式机擎云W510现身官网
- springmvc基础学习3---注解简单理解
- Oracle 修改SYS、system用户密码
- SQL Cookbook—数字、日期
- 无法安装 计算机缺失,还原安装程序Windows缺失的文件 - Windows Client | Microsoft Docs...
- 老码农:我为什么建议程序员尽早进入大厂?
- DrawIndexedPrimitiveUP这个函数
- JavaScript的eval()函数(1)
- 广东理工学院计算机考试大纲,2020年广东理工学院专插本专业课考试大纲汇总...
- 动态分配算法_【原创连载】算法素颜(第4篇):空间复杂度你真的懂了吗?
- 互联网寒冬下,为什么就你被裁了?
- 【51单片机】 蜂鸣器发声程序
- 苹果wifi网速慢怎么办_无线WiFi满格网速却很慢怎么办 如何提升网速【详解】
- python3 append的用法_python中append的用法
- 【去广告插件推荐】AdBlock让浏览器清净
- 利用Visual Studio(C++)实现简易计算器(二)