01.Ruby for SketchUp 用代码画一个球

01.如果您是首次在SketchUp内进行代码编辑,推荐安装一个名叫 Ruby代码编辑器 的插件。

02.我们先照着流程来走一遍。

03.在 Ruby 代码编辑器 内输入如下代码,然后点击下面的运行按钮。

ents1 = Sketchup.active_model.entities.add_circle [0,0,0],[0,1,0],15.mm,24  # 先画立着的圆线
ents1m = ent.add_face ents1  # 将上面ents1的圆线封面
ents2 = Sketchup.active_model.entities.add_circle [0,0,0],[0,0,1],16.mm,24  # 画平着的圆线,用来做放样的路径。
ents1m.followme ents2  # 用第二行的面来跟随第三行的线从而生成圆球。
ent.erase_entities ents2 #删除线第三行生成的线,这样就只剩下圆球了。

04.代码运行完毕后将会得到如下的结果。

操作思路

第一行

ents1 = Sketchup.active_model.entities.add_circle [0,0,0],[0,1,0],15.mm,24  # 可以写成这样,后面的,24是设置圆的段数。
ents1 = Sketchup.active_model.entities.add_circle [0,0,0],[0,0,1],15.mm     # 也可以写成这样,只是画出来的圆的段数会默认设置成24段。

绘制一个名字为 ents1 的圆线。

add_circle 是添加圆线的命令。

第一个值:后面第一个方括号内数值分别对应的是[红,绿,蓝]轴上的位置。

第二个值:第二个方括号内的数值对应的是方向、如[1,0,0]是在红轴方向上画一个圆、[0,1,0]是在绿轴方向上画一个圆、 [0,0,1] 是在蓝轴方向上画一个圆、当然也可以自由组合来达到想要的效果。

第三个值:数值为圆的半径,后面的.mm是数值的单位(这个是要特别注意的)、可以是 .mm .cm 等。

第四个值:此数值为设置圆线的段数,如果不加此数值,圆线的段数将设置为默认值(24段)。

第二行

ents1m = ent.add_face ents1

这一行的意思是将上一步画出来的那个名字为 ents1 的圆线封面,封面后的圆面的名字为 ents1m

第三行

ents2 = Sketchup.active_model.entities.add_circle [0,0,0],[0,0,1],16.mm,24

这一行的意思是绘制一个名为 ents2 的圆线、和第一行的操作是一样的、是只这里要注意的是,这个圆线的方向和大小要和第一行的有所区别,不然后面无法进行放样的操作。

第四行

ents1m.followme ents2

这一行的意思是用第二行生成的那个名字为 ents1m 的那个圆面来进行路径跟随操作、跟随的路径是第三行代码生成的名字为 ents2 的那个圆线,通过这样的操作,我们想要的圆球就绘制出来了。

第五行

ent.erase_entities ents2

这一行的主要作用是等圆球绘制完成后、将第三行代码生成的那个名字为 ents2 的圆线删除掉,因为圆球绘制完毕后、这个圆线就不再需要了。

最后、我们可以对生成的圆球进行群组的操作、这个会在后面的文章中讲到。

通过上面的操作思路说明,我们可以对代码进行修改,以达到我们想要的结果,如下方代码。

ents1 = Sketchup.active_model.entities.add_circle [5,0,0],[0,1,0],15.mm,24  # 先画立着的圆线
ents1m = ent.add_face ents1  # 将上面ents1的圆线封面
ents2 = Sketchup.active_model.entities.add_circle [0,0,0],[0,0,1],16.mm,24  # 画平着的圆线,用来做放样的路径。
ents1m.followme ents2  # 用第二行的面来跟随第三行的线从而生成圆球。
ent.erase_entities ents2 #删除线第三行生成的线,这样就只剩下圆球了。

上面的代码只是在画球那个代码的基础上、将第一行代码的那个红轴位置修改了下、就达到了绘制圆环的效果、如下图。

本文结束,本文是根据 一片叶 大佬的视频来进行操作的,可以前往大佬的B站查看视频教程。

相关推荐

暂无评论