购买
下载掌阅APP,畅读海量书库
立即打开
畅读海量书库
扫码下载掌阅APP

3.1
SketchUp开发模式

3.1.1 基本对象

SketchUp中的基本对象是线、面和体,可以实现“由点成面,由面成体”的建模操作。在建筑领域,体单元应用最多,是构成庞大建筑模型的基本单元。建筑模型由众多“体单元”构成,单纯地使用SketchUp提供的工具无法满足高效建模的需求,需对SketchUp进行二次开发。然而,对SketchUp进行二次开发时,并不能直接创建一个体单元(如长方体),而是要通过“由点成面,由面成体”的操作创建体单元。

3.1.2 Ruby

(1)Ruby的由来。

Ruby是一种面向对象的纯解释性的脚本语言,由日本人松本行弘开发。Ruby汲取了多种语言的优点,如SmallTalk的纯面向对象、Perl的便利、Eiffel的清晰语法。由于Ruby的便利性和强大功能,引起了编程者的广泛关注。

Ruby中,一切皆为对象,包括语言中的基本数据类型(如整数、布尔逻辑值、浮点数)、代码块、函数,甚至类和模块本身都是对象,开发者能够面向对象进行编程。归纳起来,Ruby的主要特点如下。

①变量的命名规则。

Ruby的变量命名规则用来表示变量和类的关系。普通变量一般用小写字母、下画线开头;常量以大写字母开头;全局变量以$开头;实例变量以@开头;类变量以@@开头,并且被共享在整个数据链中。

②面向对象编程。

“一切皆对象”,Ruby从一开始就被设计成纯粹的面向对象语言,以整数等基本数据类型为首的所有东西都是对象,都有发送信息的统一接口。

③解释性脚本语言。

在最初设计时,Ruby的研发者考虑到文字处理方面的需要,借鉴了Perl在文字处理方面的成功经验。Ruby的动态性使得由Ruby编写的程序不需要事先编译即可直接运行,这种解释性脚本语言不仅有直接呼叫系统调用的能力、强大的字符串表达式和正则表达式,而且有快速回馈的能力。

(2)Ruby书写规则。

任何编程语言都有自己的书写规则,目的是使编写的程序更规范、更具可读性。Ruby程序的语法结构如下。

①编写Ruby程序时,每一行代码结尾处无须添加任何符号。

②Ruby解释器会把一个程序解析为一个标记序列,标记序列包括注释、字面量、标点符号、标识符及关键字。

③Ruby中的注释以#字符开头并持续到该行结束,Ruby解释器将忽略#字符及其后的任何文本(但是并不忽略换行符。因为换行符是一个有意义的空白符,也许会作为语句的终结符)。如果注释多行代码,可以以一个“=begin”开头,并以一个“=end”结尾。

3.1.3 环境配置

在SketchUp二次开发正式开始之前,需要安装SketchUp软件,可在SketchUp官网了解详细信息。建议安装新版本的SketchUp软件,主要因为新版本的功能比较完善,有利于后续的操作。本书使用的版本为SketchUp Pro 2019,安装环境为Windows 10,64位操作系统。

SketchUp软件安装完成后,可直接启动,然后即可进行代码的书写与调试。SketchUp官网提供了SketchUp Ruby API文档,旨在帮助开发者利用Ruby拓展SketchUp的功能。Ruby代码的调试可以通过以下两种方法实现。

(1)使用SketchUp软件提供的Ruby控制台。启动SketchUp软件后,单击“窗口”下的“Ruby控制台”(图3.1),即可调试Ruby程序。但是,Ruby Console并不适合代码的书写与修改,需要借助外部编辑器,比较常用的编辑器有Notepad++。

图3.1 “Ruby控制台”界面

(2)使用相关插件——Ruby Code Editor,进行更加快捷和直观的代码调试。读者可以使用相关的插件完成代码的调试工作。本书采用Ruby Code Editor作为代码调试的工具。Ruby Code Editor的工作界面如图3.2所示。

3.1.4 数据操作

建筑信息数据具有如下几个特点。

(1)数据量庞大。建筑构件数量巨大,这些构件附属的几何信息量和物理信息量更庞大。

图3.2 Ruby Code Editor的工作界面

(2)数据种类繁多。由于建筑构件分为墙、梁、楼板、门窗等。因此,存储这些构件的数据信息时需要分类存储,以便于管理和建模。

(3)模型应用中产生的数据量庞大而繁多。搭建完BIM模型后,接下来的工作是将模型应用到实际工作中,无论是生成各种图纸、提取工程算量,还是制作施工模拟等工作,都会产生大量的数据信息,而且数据的种类繁多。

对BIM模型中数据的利用直接体现BIM技术的价值,需要导出建筑信息数据时,涉及数据存储等相关操作。此外,当需要创建比较多的建筑形体时,可以借助外部数据库存储模型数据用于快速定位及建模。因此,本书借助Excel作为数据存储工具,通过对Excel内数据的读取操作实现数据的导入,并将重要数据写进Excel中。 A9q5UkLVNU10ws45OFTwiKF4CyyPuPRj6KrI7C2LzocUO1x+wKRyeS9f4vUXinOZ

点击中间区域
呼出菜单
上一章
目录
下一章
×