今天有一位朋友在微信公众号上问我动态的链动作怎么用。真是惭愧!我之前虽然收集了一些关于动态块的文档和资料,简单的研究了一下,还真没注意链动作是什么。
今天借着跟他探讨的机会研究了一下,不能说完全弄懂了链动作,但基本知道是怎么回事了,在这里跟大家分享一下,如果有讲得不对或者有需要补充的地方,请高手指点。
1、先为阶梯轴添加参数和拉伸动作
打开样图,双击图块,进入块编辑器。选择线性参数,捕捉阶梯轴上的两点创建一个线性参数,如下图所示。
如果后续的操作不通过该线性参数的夹点拉伸阶梯轴,可以将线性参数的夹点数改为“0”。如果需要拉伸轴端,可以保留一个夹点或两个夹点。
创建一个拉伸动作,选择距离参数为基准参数,参数左侧点为关联参数点,然后框选为阶梯轴左侧和参数作为拉伸动作的对象(图中粗线显示的对象),如下图所示。
2、为键添加线性参数
将线性参数的基点位置改为“中点”,以便可以实现对称拉伸功能。
3、为键添加右拉伸动作
添加拉伸动作,指定“距离2”为参数,框选图中粗线所示对象。
4、为键添加常规左拉伸动作
如果不添加链动作,只是正常设置键的左拉伸动作的话,跟右侧拉伸类似,只是框选键的左侧对象,如下图所示。
5、实现链动作
要实现链动作,就需要其中一个参数作为动作之间的传递链,由于我们希望用键的拉伸控制轴的拉伸,我们就需要将轴拉伸的参数设置为中间的链。
选中“距离1”线性参数,将其属性的“链动作”栏由“否”改为“是”,如下图所示。
这次创建左拉伸动作时仍指定“距离2”为动作的参数,只是在选择对象时将“距离1”也一起选中,如下图所示。
如果你之前忘记了添加“距离1”,也可以选中拉伸对象,在属性框中的“选择集”后面的省略号按钮,重新选定对象。如下图所示:
左拉伸控制的参数是“距离2”,但因为“距离1”被选进来并设置了链动作,那跟“距离1”参数关联的拉伸动作就被链接了,就实现了联动的效果。
6、测试动态块
关闭块编辑器拖动左夹点后,不但键会双向对称拉伸,而且阶梯轴的小端也会自动拉伸,这就是链动作。如果没有实现上面动画的效果,重新进入块编辑器检查一下,看看有什么地方设置不对。
链动作的实现有两个重要步骤,其一,修改需要联动发生变化的参数的属性值,将其“链动作”属性由默认值“否”改为“是”;其二,将参数选入联动动作的对象选择集内。
如果我们反过来,想用轴端的拉伸来控制键的拉伸,可以打开“距离2”的链动作,而关闭“距离1”的链动作,在设置轴拉伸的时候选上“距离2”,在设置键拉伸时不选择“距离1”,就可以得到需要的效果,如下图所示。