零件
文章平均质量分 66
autodeskinventorapi
这个作者很懒,什么都没留下…
展开
-
获取三维线条的笔画 - Inventor 2013新功能
原文地址: http://modthemachine.typepad.com/my_weblog/2012/05/get-strokes-for-2d-and-3d-transient-wireframe-geometry.html本文由我的同事Wayne撰写。其中提到2013提供了直接的方法。An enhancement in the Inventor 2013 API allo翻译 2012-12-21 11:03:41 · 1453 阅读 · 0 评论 -
调用Inventor命令 - 续
在上次的文章里,我介绍了如何直接调用Inventor命令http://blog.csdn.net/autodeskinventorapi/article/details/17138055这在某些情况下能减少点代码,交由Inventor本身的功能完成。对于个别情形没有相关API的功能,这种方法也不失为一种解决方案。但是,这不是万能的,当执行某个命令后,控制权就交由Inventor,基本上是等原创 2013-12-30 14:22:13 · 1923 阅读 · 0 评论 -
获取特征的轮廓草图实体
基本上任何种类型的特征都基于一定的草图轮廓。如果已知一个特征,可通过Feature.Profile获得所有的轮廓,每一轮廓是一个ProfilePath对象,ProfilePath.TextBoxPath告知是否来自TextBox,ProfilePath.TextBox将返回该TextBox对象。而其余则是普通草图实体图元。我在全球博客上些了一个小代码:http://adndevblog.t原创 2013-12-12 15:02:54 · 1496 阅读 · 2 评论 -
为装配BOM表添加面积列,并自动更新组件的面积信息
BOM已经提供了重量(Mass)和体积(Volume)列,但没有面积(Area)。目前API还不能为BOM增加列,只能手动添加。但可以通过代码实现从组件中获取面积信息。我写了篇博客,发在我们全球博客,可参照其步骤。若有疑问,请留言于此。http://adndevblog.typepad.com/manufacturing/2013/11/column-of-bom-for-area-m原创 2013-11-26 13:55:51 · 1416 阅读 · 1 评论 -
巧用api提升钣金设计装配 4 - 展开导出为DXF
API支持钣金展开导出为DXF文件。帮助文档有个小例子,而且列出了目前支持的 导出选项。iLogic里使用,代码如下。这里假定我们定义了多个用户参数,用来表示DXF选项,这样可以用一个iLogic对话框让用户配置选项。Imports System.Windows.Forms'弹出文件保存对话框oFileDialog = New SaveFileDia原创 2013-11-20 14:29:56 · 1895 阅读 · 1 评论 -
巧用api提升钣金设计装配 3 - 钣金样式和折弯规则
钣金最重要的一个特点就是其折弯与展开。这些是由钣金样式所定义,而钣金样式里又包含折弯规则,折弯规则可以是线性的,自定义方程或折弯表。前面的文章提到零件有一个对象叫做零件定义。钣金文档也是一种零件文档(PartDocument)。其定义叫做SheetMetalComponentDefinition,从PartComponentDefinition派生http://blog.csdn.ne原创 2013-10-11 13:53:04 · 1646 阅读 · 0 评论 -
巧用api提升钣金设计装配 2 - 创建和修改放样特征
虽然这次课程是围绕钣金的需求,但很多原理在普通零件文档也是相通的。这次介绍如何通过iLogic访问API来创建和修改放样特征。天圆地方是钣金中应用很广泛的模型,也是个典型的放样特征。实际中,我们可能会先定义一些模板,其中有草图来规定天地的轮廓,多个参数控制。当设计者拿到后,则可基于它来调用放样命令实现特征的创建。但这个过程中可能设计者临时又想改变创作意图,比如天圆地方变成天方地方。那他需要点开原创 2013-09-30 11:36:01 · 1618 阅读 · 0 评论 -
曲线向曲面投影线
Inventor三维草图里有个功能是获取曲线在曲面上的投影线,有三种类型:1. 获取曲线沿着某向量在曲面上的投影2. 获取曲线离曲面最近的投影3. 获取曲线在曲面上贴合的投影对于1,2两种,我们自行可以实现,刚写了篇英文博客,大家可参考之。其实原理很简单,就是获取曲线的离散点,对已类型1,调用FindUsingRay得到沿着向量的相交点,对于类型2,调用Face.G原创 2013-09-02 15:53:34 · 3429 阅读 · 3 评论 -
如何自动执行应力分析
目前没有应力分析的API,能做的只是直接执行相关的命令。例如若要执行分析,则命令名是:“FeaSimulateCmd”而即便如此,只是弹出对话框。要让 【运行】自动执行,还需要模拟点击了【运行】按钮。这里可以用到VB中的一个技巧SendKeys。即发送【Enter】键给这个对话框,因为该对话框弹出时默认的焦点按钮时【运行】。【Enter】 则意味着按下了这个按钮。原创 2013-08-13 14:18:40 · 1072 阅读 · 0 评论 -
草图直线做延伸(Extend)初探
在 http://blog.csdn.net/autodeskinventorapi/article/details/17678983 文中提到,目前API没有关于草图实体剪裁,延伸,打断等具体方法,因此,只能摸索Inventor的功能,自行设计出算法。本文探讨延伸(Extend)。如果你手动操作,会发现延伸有很多种情况,即便是对最简单的直线进行延伸。我能发现的规律是,Inventor首先判断原创 2013-12-30 14:37:39 · 3717 阅读 · 0 评论 -
机加工(CAM)仿真初探
最近接触了好几个想做点机加工方面开发的客户。虽然Autodesk有CAM解决方案,甚至云上的CAM 360,但有些用户还是需要自行定制加工过程,尤其走刀的仿真。Inventor API的Transient Brep和Client Graphics可以帮助得以实现。其实很简单,刀具每走一步,让刀具的实体和基本体进行布尔运算,得到更新的体,然后用Client Graphics体现出来。我尝试做了个原创 2014-01-17 15:27:47 · 1718 阅读 · 0 评论 -
孔特征中心与参考边的距离
创建孔特征时,可以设置相对参考边的距离。这个信息通过API的 HoleFeature.PlacementDefinition.DistanceOne 和 HoleFeature.PlacementDefinition.DistanceTwo 可以拿到。如果没有设置过参考边,那DistanceOne 和DistanceTwo 就为无效对象。要得知孔距离周围边的距离,可以通过以下方原创 2016-02-14 13:15:35 · 1365 阅读 · 0 评论 -
转换面(Face)为平面草图(PlanarSketch)
原文地址:http://adndevblog.typepad.com/manufacturing/2015/10/face-to-planarsketch.html有时我们可能需要得到某个面Face的一些物理属性,例如转动惯量,这些由RegionProperties提供,但这个属性是Profile对象特有的。通过代码,可以由Face转换成一个 平面草图(PlanarSketch),通过翻译 2015-10-22 10:43:24 · 1320 阅读 · 0 评论 -
Client Feature 简介-1
似乎还没有一篇介绍Client Feature的文章,包括我们全球博客。我来写两句。简单讲,Client Feature不是Inventor本身的功能。只有开发者能进行操作。通常两个方面的情况:1. 自行组织Inventor的特征。2. 附着Client Graphics。也是通过它,让Client Graphics保存到文档中。例如,以下代码将某零件文档中的特征1和特征2添加原创 2015-01-27 12:04:20 · 837 阅读 · 0 评论 -
修改Client Feature的图标
如前篇文章看到的,Client Feature默认有个图标,类似方程式的样子。那可不可以设置自己的图标呢?是可以的。方法很简单。只需要调用Client Feature对应浏览节点的BrowserNodeDefinition.OverrideIcon,设置为需要的icon,但前提是OverrideIcon已经是一个面板资源,所谓面板资源,就是无论Inventor本身的浏览原创 2015-02-02 14:25:11 · 959 阅读 · 0 评论 -
导出含有缩略图的零件列表
原文地址: http://modthemachine.typepad.com/my_weblog/2010/02/parts-list-with-thumbnail-image.html There was a recent question in the customization newsgroup about creating a parts list in Word or Exce翻译 2015-01-27 14:22:24 · 1939 阅读 · 0 评论 -
创建不同类型的用户参数
突然发现以前在Autodesk论坛上解答过的问题,还没有写成博客。问题很简单,就是如何用API创建不同类型的用户参数。通常情况下,参数是double型的,用户们没啥困难,但如果是字串或bool型,有有点犯难的,尤其是AddValue的第三个参数该填什么呢?其实我也是用通过大量测试,得到以下的代码。Sub test()Dim oDoc As PartDocumentSet oDo原创 2014-12-01 14:13:12 · 921 阅读 · 0 评论 -
高亮装配中发生干涉的部分
不好意思,又是好一阵子没冒泡了。总算结束了全年大部分活动。现在需要充电了! 还有huanng原创 2014-11-24 15:10:10 · 1093 阅读 · 0 评论 -
获取镜像体的原实体
做镜像时,你可以对特征镜像,也可对一个实体镜像。API的MirrorFeature对象的属性MirrorOfBody告知是否实体镜像。而对实体镜像,有两种场景,1)要么新生成的特征挂在原实体上,2)要么创建一个新实体。对于场景1, MirrorFeature.SurfaceBody返回原实体,而对于场景2,没有直接的API,但可通过对原实体面进行定位来获知原实体,因为每个镜像特征面和原实体面都有个原创 2014-01-27 11:37:27 · 1427 阅读 · 0 评论 -
Inventor 2014 API 新功能 (10) 根据球面中心点创建工作点
这是2014 产品也提供的新功能,即能够根据选取的球面(无论是全球面,半球面或任意部分球面)的中心创建工作点。这在以前,用户只能获知球心坐标,手动输入。API 提供了对应的方法: WorkPoints.AddBySphereCenterPoint 。用法很简单。Public Sub createWPBySphere() Dim partDoc As PartDocument原创 2013-05-16 09:14:50 · 1823 阅读 · 0 评论 -
Inventor 2014 API 新功能 (11) 戳记 Imprinting
这是API独有的功能,用户界面没有。英文叫做Imprinting,或许翻译成戳记不是很确切,大家先跟着我看看其代码执行的结果,理解一下这个功能的作用首先预备两个零件,然后创建一个装配,将两零件做配合约束。例如下图。执行以下代码,将会让用户选取部件1和部件2,对两个部件的SurfaceBody做戳记,最后创建一个新零件文档,把戳记返回的body1 和body2作为非参数化特征添加。原创 2013-05-16 10:07:13 · 1764 阅读 · 2 评论 -
强制保存文档及其引用文档
Document.Save用来保存文档本身。如果需要同时保存其引用的文档,用Document.Save2。而缺省情况下,只有做了修改的文档才会被保存。Inventor会检查文档是否要保存,所以你会看到一个对话框弹出,列出了哪些文档需要保存。如果想无论有无修改,都保存,可强行设置Document.Dirty = True. 以下是一个简单的例子: ' 当前激活文档 Dim原创 2013-02-21 14:18:13 · 1101 阅读 · 2 评论 -
如何拷贝草图图元到另一个草图
草图中有多种图元,例如圆,线等。有时新的草图我们需要重用旧草图的图元,不需要再画一遍,产品里可以采取复制粘贴。API提供了Sketch.CopyContentsTo,可以从一个草图把所有内容复制到另外草图。如果是不同零件中的草图,只需要注意在复制后调用一下文档的Update。以下是个简单的代码,它把零件1的草图1图元内容复制到零件2的草图1.Sub VBAMain() Dim原创 2013-02-18 11:17:09 · 5117 阅读 · 0 评论 -
零件库的族添加自定义行
前阵子碰到一个需求,我先是发表在了全球博客。http://adndevblog.typepad.com/manufacturing/2012/10/add-one-custom-row-to-an-existing-content-centre-family.html该需求基于这样一个问题:一般从内容中心(或叫做零件库)插入零件,Inventor会列出一个族里所有可用的行,每行代表不同原创 2013-02-17 11:35:35 · 991 阅读 · 0 评论 -
批量控制工作特征,草图的可见性
在装配或零件中,工作特征对象,草图都有visible属性,可设置其True或者False。一个复杂的文件模型中,可能有很多工作特征,为了提高效率,用户界面有一个功能 【对象可见性】,在【查看】选项卡下。可以通过它实现所有控制工作特征可见性的。API也有对应的方法ObjectVisibility。以下代码演示了如何批量控制工作特征或草图的ObjectVisibility。原创 2013-01-14 11:48:03 · 1082 阅读 · 0 评论 -
如何向零件中添加衍生零件
衍生零件英文名为Derived Part,关于衍生的概念,推荐大家看一下网上的这篇文章:http://www.51gcs.com/info/1321/。 Inventor API 对衍生做了全面支持。你可以访问或操作和用户界面一样的功能。今天先看看如何添加衍生件。衍生件在Inventor中也是以一种特征(Feature)。创建方式和其它特征类似,先是创建衍生定义,然后根据该定义创建衍生。请看如原创 2013-01-09 19:48:23 · 2112 阅读 · 0 评论 -
如何修改衍生零件
今天碰到一个客户问题,他想修改衍生零件的属性:UseColorOverridesFromSource, 该布尔值用来决定是否使用衍生源零件中的体,特征和面的颜色。他的代码是这样写的: Public Sub ModifyDerivedPartExample() Dim oDoc As PartDocument oDoc = _InvApplicat原创 2013-01-09 21:14:34 · 1711 阅读 · 0 评论 -
如何统计钣金文档中向上和向下折弯的个数
前段时间在在Autodesk Inventor论坛解答了一个问题,觉得对钣金操作的开发者有用,现总结于此。钣金里折弯是很常用的特征。而折弯基于基准面方向,可能向上,也可能向下。而实际生产中,需要知道哪些折弯向上,哪些向下。API提供的相关方法FlatBendResult.IsDirectionUp 可以解决。以下VBA代码假定当前激活的是一个钣金文档,它将进行统计,并弹出消息。原创 2013-01-07 11:03:17 · 1632 阅读 · 0 评论 -
为iPart表添加“重量”列
原文地址: http://modthemachine.typepad.com/my_weblog/2009/02/setting-the-weight-for-ipart-members.htmlThere was a question posted on the customization newsgroup that I spent a little time invest翻译 2012-12-20 20:43:12 · 1241 阅读 · 0 评论 -
只显示模型的外轮廓
模型太大,都会影响性能,而有时只是查看模型,并不需要内部细节,可以采取提取轮廓的方式来简化模型,提高效率。以下是一个解决方案。它首先从零件或装配衍生,删除所有内部细节。然后利用该衍生件创建一个临时的非参数化零件。该零件内部的所有集合特征都被抑制。 VBAPublic Sub CreateExternalBoundary() Dim oTo原创 2013-02-27 14:18:46 · 2838 阅读 · 0 评论 -
操作iPart表的行和列 -1
API提供了访问iPart表,行,列的属性。但是没有提供直接修改行,列,或增加删除行列的方法。实际上,每个iPart表都和一个后台的Excel表格关联,在用户界面里,右键iPart表,可以看到两个菜单【修改表】或【通过Excel表修改】(我这里只有英文版Inventor,或许中文版的翻译不是这样,但可通过截图找到对应菜单)例如,假设我们有这样一个iPart。其中有一列还是自定义的。原创 2013-02-28 12:52:43 · 1029 阅读 · 0 评论 -
Inventor 2014 API 新功能 (9) Autodesk材质库(上)
Inventor 2013产品就引入了Autodesk统一的材质库,即和其它所有Autodesk产品使用相同的材质系统。Inventor 2013尚未提供相关API,所以当时是旧的材料方面API与新功能并行。从2014开始,RenderStyle不再使用。但是隐藏对象,为了和前面版本兼容。虽然你仍旧可用,但建议尽早移植到新API。我们对它不再支持。同样,Material对象和方法也不再使用,隐藏,原创 2013-05-15 11:43:59 · 4665 阅读 · 0 评论 -
Inventor 2014 API 新功能 (9) Autodesk材质库(下)
API 提供了全面的材质库相关对象和方法。首先看看对象层次结构。在Application下有AssetLibraries 集合,表示的所有材质库(AssetLibrary),包括自定义的材质库。每个库中有类别集合,叫做AssetCategories, 每个类别叫做AssetCategory,每类中的具体是具体的材质(材料或外观),都叫做Asset。Asset的属性是AssetValue的集合,原创 2013-05-15 14:26:12 · 3260 阅读 · 0 评论 -
Inventor 2014 API 新功能 (6) 插槽件(slot)草图
2014产品里增加了一个有趣的功能,创建Slot草图。大致指的是那些电路板上的插槽形状。因此我把它翻译为插槽件。咋一看不就是写圆弧和直线的组合么。其实如是自己从头写, 这代码量不小,需要考虑到圆弧和直线的约束,需要实现图元拖动或特征线(图中黄色虚线)时,形状能发生联动变化。从用户界面看到的菜单可以得知,这种插槽件有多种样式。API提供了等价的功能原创 2013-04-27 17:17:01 · 1943 阅读 · 0 评论 -
Inventor 2014 API 新功能 (5) 3D草图相交曲线
通过曲面和曲面获取相交曲线是产品已经有的功能,2014 API全面支持了! 一个很直接的方法:Sketch3D.IntersectionCurves.Add( EntityOne As Object, EntityTwo As Object ) As IntersectionCurveEntityOne: 参与相交的第一个对象,可以是SurfaceBody, Face, WorkPla原创 2013-04-25 11:59:12 · 2393 阅读 · 0 评论 -
Inventor 2014 API 新功能 (3) 控制点创建样条曲线
2014草图方面有几项重要的增强。首先是全面支持2D或3D样条曲线的控制点。可以通过控制点创建样条,并可修改控制点。以往我们是通过拟合点来创建样条:SketchSplines.Add。如今新的集合叫做SketchControlPointSplines,即控制点样条。其Add方法定义如下:SketchControlPointSplines.Add( ControlPoints As Obje原创 2013-04-25 10:56:37 · 1937 阅读 · 0 评论 -
Inventor 2014 API 新功能 (4) 创建方程草图曲线
草图第二个增强是可以通过方程创建曲线了!这是个相当有用的功能。以往如果你想画一条螺旋线,只能自己计算样条的拟合点,然后构建。增加的新对象是:SketchEquationCurves: 2D草图的方程曲线集合SketchControlPointSplines3D: 3D草图的方程曲线集合它们都提供了Add方法,返回一个方程曲线SketchEquationCurve或Sketc原创 2013-04-25 11:42:33 · 3228 阅读 · 0 评论 -
EdgeUse 和 Edge的Evaluator 区别
我的同事Adam最近写了篇关于EdgeUse 和 Edge的Evaluator 的区别。EdgeUse 和 Edge是初学Inventor Brep容易混淆和迷惑的知识。我认为Adam的这篇文章有一定帮助。特翻译如下。原文地址:http://adndevblog.typepad.com/manufacturing/2013/03/evaluator-of-edgeuse-vs-edge.ht翻译 2013-04-01 15:29:49 · 1143 阅读 · 0 评论 -
操作iPart表的行和列 -2
在上一篇文章, 我们学习了如何创建一个iPart Table,并设置了一些行和列。今天我们看看如何对现有的iPart Table进行操作。其实很简单,就是直接对Excel 表处理。以下代码基于上次创建的iPart,演示了删除第三列,增加一行,删除第二行。Public Sub test() 'Create an iPart table (21 row, 6 columns原创 2013-03-12 12:19:25 · 906 阅读 · 0 评论 -
Inventor API: 获取草图标注的点
原文链接:http://adndevblog.typepad.com/manufacturing/2016/03/get-sketch-dimension-points.html每种类型的标注可能以不同对象提供标注点。本文仅就TwoLineAngleDimConstraint做一样例。先选择某标注后,获取点,创建工作点Sub DeletePoints(c As Object翻译 2016-03-21 11:38:14 · 1367 阅读 · 0 评论