所有分类
  • 所有分类
  • SU插件
  • 模型

SU动态组件——onClick与ANIMATE(三)

今天我们说的是onClick动作和ANIMATE函数,这个内容和上面的动图有点关系;

意思是使用这两个参数,再加上我们上篇讲的复制,配合位置、尺寸信息就可以把上图的百叶窗给制作出来;

参考信息来源:https://help.sketchup.com/zh-CN/sketchup/dynamic-components-onclick-function-examples

以下是官方对于ANIMATE函数的解释,上图为英文原版,下图使用Google翻译;

(英文原版)

(Google翻译)

我觉得你没看懂,那我们做个案例,先看下通过onClick动作和ANIMATE函数制作的组件,点击动作可以自动延伸复制;

这东西目前没有实际作用,只用于更好的理解onClick动作和ANIMATE函数的用法;

制作过程:

我们先制作一个立方体和一个长方体(长度是立方体的倍数,用于约束复制的最大值);我们对立方体、长方体分别成组件,再将两个物体成为一个大组件;(关系如下图所示)正方体名称:YSJ

隐藏的长方体:BOX

总的组件:Y

上几篇的文章我们讲述基础的复制,这里我们直接给三个对象添加LenX参数信息,其中给最外层的”Y”组件添加自定义信息“MAX” 参数“=BOX!LenX” (此参数主要用于后面ANIMATE函数的取值;)

复制的话参数 “=Y!LenX/LenX”  (不懂此参数的含义建议查看上篇文章)

这里给复制的物体添加X轴的位移参数“=copy*10”;此时正方体已沿着X轴复制;在“YSJ”组件下添加动作”onClick”,并在函数中找到”ANIMATE函数”将其插入”onClick”框中;

插入后文本框中会有这条函数,函数要怎么改?

ANIMATE(“attribute”,state1,state2,…stateN)

其中第一个”attribute”是要改动变动的值,需要我们定义,后面的“state1,state2,…stateN”是”attribute”的取值范围;

例如此案例中:动作”onClick”的参数为:ANIMATE(Y!LenX,Y!MAX/2,5,Y!MAX);其中Y!LenX是我们定义需要改动的值,“Y!MAX/2,5,Y!MAX”则是我们最初给总的组件限定的值210cm,我们按照此参数输入后,点击组件”Y!LenX”的值会依次变成5,105,210;(因为“Y!LenX”数值的变化,复制“=Y!LenX/LenX” 也会随着变化,所以实现了伸长缩短的功能)

细心的人可能发现了组件的单位不同,这里有个很奇怪的问题就是下面的组件都是CM为单位,但是总的组件以cm为单位却会出现运算错误,改为英寸才正常;(我也挺郁闷的)

接下来这个点击X轴旋转的就简单多了,同样的复制步骤同样的添加onClick动作和ANIMATE函数,我们给百叶组件”Q”添加RotX参数;

在总的组件中添加“onClick”,并插入“ANIMATE函数”

“ANIMATE(Q!RotX,0,45)”

点击后Q!RotX的参数会在0度和45度中切换;

这样你点击后就实现了类似打开关闭百叶的功能;

之后我们把这两个功能组合一下,就可以实现这样的动态效果,这期主要将这两个功能,先学习了解一下基础的参数和函数,不要下期一说什么都不知道!

注意:
1、本站标记“已测试”的均在Sketch Up18/20/22中测试! 了解详情
2、本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长!
3、所提供资料只作为学习研究之用,请学习使用后(24小时内)立即删除!
4、本站资源售价只是赞助,收取费用仅维持本站的日常运营所需,并非素材(资料)售价!
0

评论0

请先
加入VIP资源免费下载,升级VIP享受更好的下载体验! 查看详情
显示验证码
没有账号?注册  忘记密码?

社交账号快速登录

微信扫一扫关注
如已关注,请回复“登录”二字获取验证码