Fusion 360 获取装配部件的三角面片顶点在装配坐标系中的数值
来源:互联网 发布:日本高中留学 知乎 编辑:程序博客网 时间:2024/04/29 21:01
原文链接:
https://forums.autodesk.com/t5/api-and-scripts/getting-triangulated-mesh-data-in-world-object-space/m-p/5613860#M354
如果您熟悉Inventor API,对部件与装配的关系不会陌生。在Fusion 360 也是类似的,即,部件是原始零件/子装 在装配中的引用,其形体即所谓代理实体,加入到装配后,部件的位置是基于装配基点做的偏移,自然其面片的数据也是偏移后的。所以,要是想拿到装配坐标系的的数值,需要再拿到原始零件的数值,再加上位置变换量。API提供了方便的方法,当拿到零件的body后 (目前还只是 BrepBody),可用以下方法得到装配环境中的代理body,进而通过这个代理body得到的三角面片信息就是装配坐标系的数值了。
BRepBody.createForAssemblyContext (部件引用)
function run(context) { "use strict"; if (adsk.debug === true) { /*jslint debug: true*/ debugger; /*jslint debug: false*/ } var ui; try { var app = adsk.core.Application.get(); ui = app.userInterface; var meshStr = ''; var allOccs = app.activeProduct.rootComponent.allOccurrences; for(var i = 0; i < allOccs.count; i++){ var occ = allOccs.item(i); var comp = occ.component; var bodies = comp.bRepBodies; for(var j = 0; j < bodies.count; j++){ var body = bodies.item(j); body = body.createForAssemblyContext(occ); var meshMgr = body.meshManager; var meshList = meshMgr.displayMeshes; for(var k = 0; k < meshList.count; k++){ var triMesh = meshList.item(k); var data = triMesh.nodeCoordinatesAsDouble; var dataStr = data.join(","); meshStr += dataStr; meshStr += '\n'; } } } //ui.messageBox(meshStr); } catch (e) { if (ui) { ui.messageBox('Failed : ' + (e.description ? e.description : e)); } } adsk.terminate(); }
0 0
- Fusion 360 获取装配部件的三角面片顶点在装配坐标系中的数值
- 访问装配的部件
- 如何获取与用户选择的面关联的零件中的螺纹在装配图中的坐标等信息?
- 装配
- Creo二次开发:坐标系自动装配
- 部件BOM结构与CAD装配结构不一致的解决方法
- S5pv210的x210中的内存装配
- Spring中的Bean的装配方式
- SSH 在自动装配产生的错误
- hadoop在ubuntu下的安装配
- 计算三角面片的面积、体积
- 装配中的颜色
- spring中的集合装配
- spring中的装配集合
- spring中的装配集合
- VTK三角面片
- spring的自动装配和精确装配
- Spring Bean的装配 -- 自动装配
- windows 安装mysql5.7以上版本
- oracle 修改表空间文件路径方法
- 算法的特征及设计要求
- 严格的HTML 4.01 手册
- 虚拟机装mac系统
- Fusion 360 获取装配部件的三角面片顶点在装配坐标系中的数值
- Struts2介绍及教程
- WPF:UIElement以及FrameworkElement中常见事件的运行顺序
- MacBook新手该注意的情况
- PHP的错误机制总结
- 词性标注说明
- Android如何录制视频过程中切换保存路径?【已解决】
- C语言中堆和栈的区别
- JVM性能调优入门 调优策略