今天有一位朋友在公众好里问我动态的链动作怎么用,真是惭愧!我之前虽然收集了一些关于动态块的文档和资料,简单的研究了一下,还真没注意链动作是怎么回事。
借着跟他探讨的机会研究了一下,不能说完全弄懂了,但基本知道链动作是怎么回事了,在这里跟大家分享一下。
网上流传的关于链动作的教程只有浩辰CAD的一篇文章,为了省事,我直接借用浩辰的这个例子吧。那篇文章说的太简单,我再添加一点说明和截图吧。
链动作,顾名思义,就是建立多个动作之间的链接关系,实现联动效果!
我们先看看动态块链动作的效果吧!
我们看上面的例子,在保持键的中心位置不变的情况下实现键的对称拉伸,同时,阶梯轴的左端也要产生拉伸改变,保持键距离轴端的距离不变。
实际上这里有三个动作,一个是轴左侧的拉伸动作,另外是键的两侧拉伸动作。这里的链动作指的是键左侧的拉伸时,轴左端的拉伸动作跟随运动。
动作之间是无法直接链接的,只能通过参数作为纽带。
下面我们来看一下操作步骤,由于篇幅有限,捕捉写得比较简单,在学习这个之前需要对动态块的参数和动作定义有一定了解。
为了大家练习方便,把样例图块也发给大家,图块下载地址:http://pan.baidu.com/s/1gebsBRH
1、先为阶梯轴添加参数和拉伸动作
打开样图,双击图块,进入块编辑器。选择线性参数,捕捉阶梯轴上的两点创建一个线性参数,如下图所示。
如果后续的操作不通过该线性参数的夹点拉伸阶梯轴,可以将线性参数的夹点数改为“0”。如果需要拉伸轴端,可以保留一个夹点或两个夹点。
创建一个拉伸动作,选择距离参数为基准参数,参数左侧点为关联参数点,然后框选为阶梯轴左侧和参数作为拉伸动作的对象(图中粗线显示的对象),如下图所示。
2、为键添加线性参数
将线性参数的基点位置改为“中点”,以便可以实现对称拉伸功能。
3、为键添加右拉伸动作
添加拉伸动作,指定“距离2”为参数,框选图中粗线所示对象。
4、为键添加常规左拉伸动作
如果不添加链动作,只是正常设置键的左拉伸动作的话,跟右侧拉伸类似,只是框选键的左侧对象,如下图所示。
5、实现链动作
要实现链动作,就需要其中一个参数作为动作之间的传递链,由于我们希望用键的拉伸控制轴的拉伸,我们就需要将轴拉伸的参数设置为中间的链。
选中“距离1”线性参数,将其属性的“链动作”栏由“否”改为“是”,如下图所示。
这次创建左拉伸动作时仍指定“距离2”为动作的参数,只是在选择对象时将“距离1”也一起选中,如下图所示。
如果你之前忘记了添加“距离1”,也可以选中拉伸对象,在属性框中的“选择集”后面的省略号按钮,重新选定对象。如下图所示。
左拉伸控制的参数是“距离2”,但因为“距离1”被选进来并设置了链动作,那跟“距离1”参数关联的拉伸动作就被链接了,就实现了联动的效果。
6、测试动态块
关闭块编辑器拖动左夹点后,不但键会双向对称拉伸,而且阶梯轴的小端也会自动拉伸,这就是链动作。如果没有实现上面动画的效果,重新进入块编辑器检查一下,看看有什么地方设置不对。
链动作的实现有两个重要步骤,其一,修改需要联动发生变化的参数的属性值,将其“链动作”属性由默认值“否”改为“是”;其二,将参数选入联动动作的对象选择集内。
如果我们反过来,想用轴端的拉伸来控制键的拉伸,可以打开“距离2”的链动作,而关闭“距离1”的链动作,在设置轴拉伸的时候选上“距离2”,在设置键拉伸时不选择“距离1”,就可以得到需要的效果,如下图所示。
上面是我下午研究的成果,现学现卖,如果哪位高手看到后觉得不对或有补充,请留言。
以上技巧适用于AutoCAD或浩辰CAD等支持动态块(BEDIT)功能的CAD软件。