-su动态组件「SU动态组件案例拉伸复制二」

su动态组件「SU动态组件案例拉伸复制二」

今天接着上一篇的内容讲,复制的相关内容;

没看过的先看上篇文章内容,有助于今天内容的理解;

SU动态组件(一)

今天是以官方的这个动态组件作为案例,将其制作一遍;

开始前我们需要准备四个部件、如下图所示,水平结构的护栏,中间的格栅和立柱;

我们要为这四个部件分别成组件,注意是组件不是群组,成群组可以会导致后面的“ScaleTool”无法正常应用;

无任何参数直接拉伸导致物体被拉伸变形,给“L”添加添加位置和大小信息参数,其中输入“=10” (后面不带单位);意思则为固定是10cm或inch;

我们给“L”组件内的位置和尺寸都给予固定的参数,这样在拉伸过程中,“L”组件便不会收到拉伸影响,保持其原有大小;

(拉伸“上”“下”组件位置发生变化)

给“YSJ”组件添加“ScaleTool”并将不需要的拉伸点隐藏起来,点击应用即可生效;(如果你应用之后拉伸点依旧没有消失,那你肯定没认真看前面的步骤,必须为组件;)

给我们的“上”、“下”两个组件添加位置信息,依旧是“= “数字””的形式(例:\”=10\”);

添加后我们拉伸位置已经没有变化,是在正确的位置上;

再给“上”“下”组件添加尺寸信息,其中LENX的值应该为“YSJ”组件LENX的值-\”L\”组件LENX的值;(看起来挺复杂,其实就是下图所示③=①-②)

公式:\”=YSJ!LenX-L!LenX\”

上面的公式不用一个个字母写,找到对应的位置点击就可生成对应组件的参数;

上面的拉伸动作,中间的“格栅”组件被拉伸变形,且位置信息发生移动,我们先给他固定位置及尺寸信息;

给“YSJ”组件中定义一个数值“A”用作间距的数值,数值取值12;并给格栅的“copies”数值写为“=YSJ!LenX/YSJ!A”;

(这是公式运算出来为2,但是并没有复制出东西,其实已经复制了,只不过两个东西叠加在一起了;)

基础的复制内容我们在上篇文章中有说,可以回去看看;

我们需要让“格栅”组件向X方向复制,所以位置X 参数“=15 COPY*YSJ!A”;

此时物体已经复制出来,且沿着X轴方向复制;

但是格栅的数量偏少,但是公式计算也没问题,注意单位,这里\”YSJ\”组件的单位为inch,其他均为cm,才会导致这个运算错误,改正后复制数量就没问题了;

接下来是优化一些参数,栏杆应该是可以上下拉伸的,但是刚才我们直接写死了,Z轴方向上的参数,导致动态组件无法向上拉伸;

找到“格栅”组件的尺寸信息“LenZ”将原有的固定数值改成“=YSJ!LenZ-18”(意思为最外围的“YSJ组件Z轴高度-18cm”)

\”L\”组件的尺寸信息“LenZ”则可以直接等于“=YSJ!LenZ”;

改完之后发现“上”组件的Z轴位置也不太对,也要将其改为“=YSJ!LenZ-25”;

到这里你就得到了一个可以拉伸长度和高度的动态组件;

我已经讲完了,不知道你做出来没有?

Author Image
SDFJKOSD

发表回复

您的电子邮箱地址不会被公开。