Assassin 发表于 2006-7-9 08:47:00

Fx参数 能否进行条件判定以确定输出的值??

本帖最后由 作者 于 2006-7-9 9:30:20 编辑 <br /><br /> <P>在FX中建立了 A1 和 A2 两个参数值,能否让A1=1时 A2=50 ,当A1=2时 A2=33 当A1=3时 A2=169像这样的以条件判定以确定输出的值,AIP能作到吗? 我没有做到,因为可能会用到VBA,可是那个东东<BR>我不明白,望大家能指点我一下<BR></P>

陈伯雄 发表于 2006-7-9 08:59:00

本帖最后由 作者 于 2006-7-9 10:07:56 编辑 <br /><br /> <P>这不是条件,而是典型的表达式,即:a2=a1*2</P>

Assassin 发表于 2006-7-9 09:27:00

<P>先谢谢陈工,没想到您这么快<BR>可能是我所给的数有些问题,我是想通过对一个数的改动来同时改到3个以上的数,在设计中会有类同的<BR>零件,我们会给它们分号如,XER-560-787-1 XER-560-787-2 XER-560-787-3 但其各自只有几个尺寸有不<BR>同,所以想用只改动零件编号,来连动尺寸</P>

canyouzeng 发表于 2006-7-9 14:36:00

<P>用iPart……</P>

guanbo1967 发表于 2006-7-9 15:32:00

<P>伤心,inventor的fx只能处理连续函数!</P>
<P>也伤心,inventor的ipart只能处理常数</P>

woolf24 发表于 2006-7-9 16:38:00

<P>用VBA来修改或者控制fx的参数非常方便。</P>

Assassin 发表于 2006-7-9 17:19:00

woolf24发表于2006-7-9 16:38:00static/image/common/back.gif
用VBA来修改或者控制fx的参数非常方便。

<BR>&nbsp;&nbsp;&nbsp; &nbsp; 光是这么说,也很方便,那是如何做到的呢,如何通过VBA来实现以上所说的功能呢,<BR>希望能说的细一点。谢了

woolf24 发表于 2006-7-9 21:45:00

<P>假定你已经做了一个草图并已处于激活状态。草图中有两个尺寸“d0”,“d1”需要按要求控制。把下面的代码复制到basic的文档文件中。修改if中的条件合乎你的要求即可。</P>
<P>Public Sub ModelParameters_change()<BR>&nbsp;&nbsp;&nbsp; <BR>&nbsp;&nbsp;&nbsp; Dim oPartDoc As Inventor.PartDocument<BR>&nbsp;&nbsp;&nbsp; Set oPartDoc = ThisApplication.ActiveDocument</P>
<P>&nbsp;&nbsp;&nbsp; Dim oParams As Parameters<BR>&nbsp;&nbsp;&nbsp; Set oParams = oPartDoc.ComponentDefinition.Parameters</P>
<P>&nbsp;&nbsp; <BR>&nbsp;&nbsp;&nbsp; Dim oModelParams As ModelParameters<BR>&nbsp;&nbsp;&nbsp; Set oModelParams = oParams.ModelParameters</P>
<P>&nbsp;&nbsp;&nbsp; If oModelParams.Item("d1").Value = 5 Then<BR>&nbsp;&nbsp;&nbsp; oModelParams.Item("d0").Value = 4<BR>&nbsp;&nbsp;&nbsp; End If<BR>&nbsp;&nbsp;&nbsp; oPartDoc.Update<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <BR>End Sub</P>
<P>注意在程序中数值的长度单位为:cm</P>
<P>用这个方法比用excel中VB方便灵活。如果你有兴趣可以做出机构模型草图的动画。当然还要增加一点语句。</P>

lijiao 发表于 2006-7-11 08:43:00

用自定义函数,具体用法可以看看帮助文件,也可以看看陈老师的书。
页: [1]
查看完整版本: Fx参数 能否进行条件判定以确定输出的值??