基于信息分类的中国古建构件库平台设计
[12-01 19:54:50] 来源:http://www.jianzhu518.com 建筑信息化 阅读:9393次
0 引 言
中国建筑的传统格调典雅清新、端庄大方、高雅脱俗、清朗简洁、新颖夺目[1],以木结构为主体,产生丰富的艺术造型;以庭院为单位,组合出变化的序列;以多种装饰手段为方法,造成或鲜艳浓丽或淡雅朴素的视觉效果;以自由灵活为布局原则,变化出严谨中不乏灵动的空间特色。中国古代建筑高超的结构技术和丰富的艺术处理手法的高度统一,充分反映了中国传统建筑学的高度成就[1],同时也成为世界建筑史上重要的组成部分。而中国古建筑木构件以独特的造型、完备的结构功能(例如飞檐,斗拱)成为中国古建筑的重要标识,在漫长的历史长河中,中国古建筑的构件发展形成了一套自成系统的演变模式。(参考《www.jianzhu518.com》)
然而在目前的建筑业,特别是古建筑保护行业,仍然与工匠时代相同,以传统方式进行资料传递和知识的传授,一来这样的知识传递无法达到高效;二来知识在传递过程中容易出现丢失,甚至造成信息孤岛的情况。所以,中国古建筑参数化构件库的提出,就是为了使用信息化的方法最完整地保存中国古建筑的构件信息,利用可视化的编辑和可扩展的平台,辅助建筑工程人员理解和掌握,并且真正意义地在实践中发挥辅助作用。
本文旨在实现一个古建筑构件库的平台,在梳理古建筑构件的数据资料的同时,也提供一个面向工程人员的可扩展平台,以统一化、标准化、参数化的构件,打破传统的师徒之间口口相传的知识传递方式。本文介绍的实现框架将基于ObjectARX,利用其能对AutoCAD有效扩展,实现一个建筑工业通用的构件平台。
1 系统平台建立
1.1 系统平台
根据调研和比较,本平台采用ObjectARX作为系统运行的主要开发和运行平台,其他业务逻辑和接口等采用ASP.NET平台实现。主要实现自定义构件、构件管理和生成、与AutoCAD应用接口和界面设计、通用性数据文件管理。ObjectARX应用程序是动态链接库(DLL),可以和AutoCAD共享地址空间,直接调用AutoCAD的内部函数[2],这样产生的数据便于其他工程人员再次理解、编辑和付诸于建筑实践中去。
对于AutoCAD用户,只要本地安装有AutoCAD2008应用程序,通过引入本平台的外部链接库(arx文件),就可以使用本平台了。考虑到扩展性,我们构件库平台中的同型构件库可以作为一个单独的组件嵌入到其他ASP.NET平台上使用,便于重用。
1.2 基本功能
本平台需要实现以下基本功能:
(1)单个古建筑构件的创建、编辑、显示;
(2)复合古建筑构件的创建、编辑、显示;
(3)尺寸、纹样管理;
(4)友好界面;
(4)通用工程数据库操作。
2 平台框架
由于项目需要满足可扩展的同时,还需要对构件进行统一化、标准化、参数化处理,同时需要保留古建筑中丰富的装饰纹样,因此本框架如图1所示,利用了同型构件库和保留数据块,前者处理标准化的构件,以参数为驱动;后者处理复杂的装饰纹样。装配中心将通过参数获得构件集合并加工(例如开槽等),最后写入数据库,等待通过AutoCAD(或者其他途径)反馈给用户。
2.1 同型构件库
同型构件库是整个构件库平台的重点,由于中国古建筑在不同的朝代形成的各个类似但不完全相同的范式,将这些范式和通过前人努力收集得到的数据资料汇总,转化成计算机语言,形成一个个抽象的由参数驱动的数据模型;根据中国古建筑的特点将构件库分类,便于大规模的构件演化体系的造型管理、数据修改和组装装配。
同型构件库在参数的驱动下,在尺寸库中提取规范下的辅助尺寸,自动生成相应的实体造型。例如,产生一个斗拱只需要一个基础尺度———斗口,于是每个斗拱中组成部件的长宽高均由尺寸库提供,最后生成一个斗拱的模型,返回给下一步的装配中心。其流程如图2所示。
2.2 保留数据块
保留数据块作为同型构件库的补充,处理不适合用构件库处理的构件:一方面,保留数据块作为同型构件库的补充,存放作为实体构件的纹样;另一方面,保留数据块存放一些图案花纹,作为实体构件的一部分,参与到构件的造型过程中。
保留数据块中处理的构件具有以下特点:
(1)功能上装饰性强、通常不起到实际作用;
(2)造型上以曲面为主、造型复杂;
(3)实际应用中由工匠即兴发挥。
2.3 装配中心
装配中心用来装配同型构件库产生的构件和保留数据块中存储的纹样进行组合和操作,将两个构件之间互相咬合互相链接的部分进行处理,并且对构件进行一定的碰撞检测,保证构件之间不存在实体歧义。装配中心的流程如图3所示。
2.4 数据库
实体造型在经过了装配中心之后,就是一个精确表达真实构件的实体。将实体通过数据库操作写入数据库文件(dwg文件),并且等待AutoCAD或其他应用程序的调用。由于dwg文件作为工程领域的通用文件格式,可以通过例如DWGviewer等其他程序读取显示。
2.5 用户界面和命令管理
用户界面负责获得最终用户的输入操作,获取基点位置,获取构件类型或其他可供选择的输入。命令管理负责将该命令集成到AutoCAD的命令中,用来更好地为最终用户调用本平台提供方法。界面实例如图4所示。
3 关键技术
3.1 同型构件库的对象管理
由于同型构件库里的对象是抽象对象,结构如图5所示,所有同型构件分成四类,分别是拉升体(由闭合曲线拉升形成构件)、复合体(通过两个物体互相操作形成构件)、阵列组(通过一定规则形成一组构件,至少3个),其他(通过点线面直接描述的不规则物体)。图5中所示的OB代表着一系列的抽象模型,需要参数驱动,在用户输入的参数、尺寸库的辅助参数和保留数据块的装饰纹样的驱动下,调用OB的造型过程,最后输出模型。
这样的结构能够较好地保证构件的分类管理,并且在建模过程中,只有建模操作方法,没有具体的建模函数调用,进一步保证了模块的可移植性。
3.2 可扩展的平台接口
由于ObjectARX的应用程序也就是DLL程序,利用DLL程序可以动态加载的特性。另外,通过分组封装,不同功能可以很灵活地组装,这样,也为其他二次开发提供了功能扩展的可能。功能如图6所示。使用同样的接口定义,就能最大程度地利用同型构件库和装配构件库内的造型方法和结果,使用接口定义的模型参数构建与二次开发的渲染环境相符合的参数模型,在使用相同的应用程序接口或数据扩接口后,就能轻松将本构件库中的模型输出显示、编辑保存。
上一篇:浅议建设工程项目的信息化管理