Sketchup 程序自动化快速掌握

Sketchup 程序自动化(一)基本结构

Sketchup 程序自动化(二)Ruby 基础、单位转换

Sketchup 程序自动化(三)路径、平面拉升

Sketchup 程序自动化(四)Transformation

Sketchup 程序自动化(五)图层、Group、Component

Sketchup 程序自动化(六)颜色、材质贴图

Sketchup 程序自动化(七)Ruby流程控制

最近看完了Google上能找到的、比较系统的一本关于Sketchup自动化的书籍,作者是一名来自台湾的开发者(李正冬),内容比较基础,也比较实用,首先感谢这位开发者的无私奉献。

然后,本人也在学习的过程对内容进行了归纳与总结,不管是设计师还是程序员,我尽可能的简洁通俗,希望能够帮助到各位读者尽快掌握到该技术。

在此之前需要读者对Ruby的基本语法、面向对象思想、Sketchup的基本操作有一定了解。

引入

常规套路:

# 模型容器类,理解为一个大容器。
model = Sketchup.active_model
# 实体对象类,是一个数组,存了许多实体对象,实体指的是面对象、线对象等等。
# 如果我们需要将绘制出的线显示出来,需要调用 ent 对应的方法。
ent = model.entities

画线:

# 用数组来表示点矩阵,也可以用Geom::Point3d
point1 = [5,0,0]
point2 = [1.5625,-4.75,0]
point3 = [-4.0625,-2.9375,0]
point4 = [-4.0625,-2.9375,0]
point5 = [1.5625,-4.758,0]

# 添加绘制一条直线
line = ent.add_line point1,point2

# 向实体对象数组中添加一个曲线。
curve = ent.add_curve point1,point2,point3,point4,point5

画其他形状:

# 画圆形
# 方向 代表座标轴,指的是实体所处于那一个面
# [1,0,0] YZ 面
# [0,1,0] XZ 面
# [0,0,1] XY 面

# 中心点、方向、半径、断数(默认是 24,指的是形成这个面所需要的线段数量)
circle = ent.add_circle [0,0,0],[1,1,0],10,100

# 画多边形
nogn = ent.add_ngon [0,0,5],[0,0,1],3,4

# 画圆弧
# 遵循右手原则
# 中心点、轴、方向、半径、弧度范围、断数
arc = ent.add_arc [0,0,0],[1,0,0],[0,1,0],9,0,90.degrees,100

运行结果:

可能读者看到这里还是会有一些疑惑,但不用担心,后续文章会对整体的API结构进行说明,也会穿插一些Ruby的语法和常见操作。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章