Sketchup 程序自动化快速掌握

image

最近看完了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

运行结果:


image

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

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 一、异同对比选择1、Python和ruby的相同点: * 都强调语法简单,都具有更一般的表达方式。python是缩...
    沃伦盖茨阅读 4,225评论 2 24
  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 174,650评论 25 709
  • TITANIC DATA PREDICTATION ok, 这是我自己做的titanic建模,主要过程是:探索数据...
    任海亮阅读 1,457评论 1 2
  • 龙阿姨: 我想在中国很少孩子愿意或者说敢于和父母谈感情的事。因为我们的父母不重视我们的情绪波动,不承认这是情窦初开...
    黄青海阅读 911评论 20 28
  • 初一结束,无心就读。上午领奖状,下午我就上了建筑工地。 是阿成帮我介绍的工作。阿成大我三岁,是李庄最聪明的同学。有...
    摄影师阿布阅读 571评论 4 17