动态组件制作地板.doc_第1页
动态组件制作地板.doc_第2页
动态组件制作地板.doc_第3页
动态组件制作地板.doc_第4页
动态组件制作地板.doc_第5页
已阅读5页,还剩11页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、在这篇文章里,我们一起来学习如何制作一个动态的地板。这次我们将用到Floor和Ceiling两个函数,但是请注意,这里的函数FLOOR及函数CEILING与模型中的Floor(地板)没有任何关系。 SketchUP7动态组件中所用到的函数是通用的,如果想了解更多函数的具体功能及讲解,可打开Microsoft Office Excel的帮助文档进行查阅。 1,目标 通过缩放后,组件能够自动生成下图所示的效果。2,制作准备 要实现这样的效果,所需要的组件材料其实非常简单,不像上面我们制作的篱笆。 这里其实只需要一个小方块Tile。然后再通过函数控制,把小方块进行阵列组合成地板Floor就可以了。创

2、建一个名称为 Floor的组件。双击进入组件Floor,全选,继续再创建一个名称为Tile的组件。查看已经建好的组件的属性,我们能够看到刚才创建的两层组件的属性。 3,为组件配置属性 首先分析,将如何来实现一个Tile成行成列的组成一片地板呢,他们各自需要什么样的属性呢? 地板Floor:位置不用考虑了,这个地板组件应该是可以任意移动的,默认的就是可变数据,因此不用列出 大小将会是可调整的并且会被地板砖Tile控制厚度,可要可不要。这里加上,但不予调整。 (自定义)行数 地板砖由几行组成 columns (自定义)列数 地板砖由几列组成 rows (自定义)地砖尺寸 TileSize行数与列数

3、我们暂且留空,后面需要用数学表达式来控制其数值 我们把地板砖的尺寸值定义为60,这个是不带单位的,只是一个普通的自然数值。地板砖Tile的属性配置 位置 每个地板砖的相对坐标 大小 前面已经在Floor中定义过了,这里直接把定义好的数值取过来就可以了。 LenX LenY 的值分别定义为 =Floor!TileSize 这样计算的结果就是,Tile的尺寸是60cmX60cm的正方形。在缩放过程中,我们希望地板砖的厚度是不变的。因此Z轴控制为 6cmTile的大小属性配置完毕现在再回头看Floor里刚才定义的行数与列数,就可以通过数学表达式来控制了 =CEILING(LenX/TileSize)

4、 CEILING 的涵义是 将后面的数值向上取整数,比如 CEILING(2.3)=3 LenX/TileSize 的意思是 地板被拖拉的长度 除以 地板砖的尺寸(60)同理定义 列数在这个组件中,地板砖Tile存在一个复制的动作,添加Copies行为 =Floor!rows*Floor!columns-1 从地板的参数中取出 行数乘以列数 由于之间已经存在一块原始地板砖,因此在这个数值的基础上要减掉1,就得到了需要复制的块数。这时选取组件,得到右边所示的属性列表。 现在需要对地板砖Tile的位置进行控制。要控制地板砖的位置坐标,我们需要再添加两个自定义函数 myColumn某块地板砖位于第几行 myRow 某块地板砖位于第几列 先来定义myRow =Floor(COPY/Floor!columns) 函数FLOOR的涵义是 对其后面的数值向下取整数。FlOOR(2.6)=2利用已经定义的myRow函数,来定义myColumn的表达式 =COPY-(myRow*Floor!columns)利用上面定义完的myRow,myColumn,就可以定义某块Tile的位置坐标了。 X =myColumn*floor!til

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论