基于AutoCAD二次开发的室内设计软件平台设计
2019-12-09符志军王景景
符志军,王景景
(江西工程学院,江西新余 338029)
0 引 言
AutoCAD 软件操作较为简单,并且具有多种实用功能,在实现AutoCAD 软件设计绘图过程中,设计师要反复地对相似的内容进行绘图和计算,所以会因为疲惫的工作而出现错误。在实现室内设计的过程中,使用VB编程语言进行AutoCAD 软件的二次开发,实现全新功能模块的创建,从而使室内设计更加方便且快捷。文件在实现开发设计以后都属于可执行文件、数据库文件、帮助文件夹及图块库文件夹。某室内设计.exe属于二次开发总程序的入口,其他都是通过程序调用资料的数据。假如所创建CAD 图像文件为双击室内设计,就会将二次开发功能界面及绘图界面同时打开[1]。为了能够实现有效绘图工作,本文对AutoCAD 二次开发室内设计软件进行分析。
1 AutoCAD 二次开发的方法
1.1 AutoCAD 软件的开发途径
AutoCAD 软件开发的方法主要包括两种:第一种为通过大量技术人员实现自主版权AutoCAD 软件的开发;第二种是基于AutoCAD 软件实现二次开发。假如AutoCAD 软件具有自主版权,那么需要大量人力、物力实现。使用二次开发软件,过程较为便捷[2]。
1.2 选择AutoCAD 二次开发工具
1)VBA。VBA 属于在AutoCAD 嵌套的将对象作为基础的编程环境,其开发能力较为丰富,还具备面向对象的程序设计方法,能够直接执行在AutoCAD 内部。VBA 工程能够在图形文件中单独存储,快速创建对话框,实现自动化工作,而且程序也较为容易实现,但会由于用户误操作,导致正常应用程序崩溃。
2)AutoLisp 及VisualLisp。AutoLisp 属于人工智能语言,在AutoCAD 内部嵌入的主要目的就是使用户在使用AutoCAD 实现二次开发的过程中充分发挥自身的作用。其属于AutoCAD 二次开发工具的唯一解释性语言,不仅能够实现AutoCAD 命令的修改及添加,还能够扩大图形编辑功能,实现数据库及图形库的创建,并且将所有AutoCAD 命令进行调用。其语言规则较为简单,容易学习也容易使用,应用较为广泛。但是其功能较为单一,综合处理的能力比较差。VisualLisp 属于使AutoLisp 能够加速的软件工具,使用户源代码、程序调试和测试过程中更加方便[3]。
3)Objet ARX。其属于以C++语言为基础,并且面向应用程序及对象开发环境的接口。其运行速度比较快,并且运行较为简单、稳定,能够实现多图挡的操作,还能够有效使用内存。Object ARX 具有一组动态链接库,能够直接使用AutoCAD 核心数据代码及结构,还能够直接调用AutoCAD 函数。但是要求开发人员具有较高的编程能力,并且开发的过程较为复杂,具有较大的程序运行风险。
上述开发工具都属于AutoCAD 内嵌式的编程语言,用户能够通过此语言创建全新命令,实现AutoCAD 原本功能的扩展。AutoLisp能够便于添加AutoCAD 全新的命令,其利用内部进程通信和AutoCAD进行通信。ADS属于C 语言应用程序,其属于外部函数在AutoCAD 中的添加,要通过AutoLisp解释器进行调用[4]。三者的关系如图1所示。
图1 三者的关系Fig.1 Relationship of three programs
VBA 及ARX 能够实现庞大、复杂和接近AutoCAD底层数据软件的编写,AutoLisp 及VisualLisp 能够灵活使用AutoCAD 功能,也是一般工程技术人员对AutoCAD进行开发的理想工具。在选择AutoCAD 二次开发工具的过程中,会对二次开发编程难度、周期、软件后期维护、开发效率等具有直接影响。在进行选择的过程中,不仅要对程序运行的速度进行考虑,还要充分考虑其对于语言的成熟度、对于AutoCAD 的控制能力及稳定性等。综上,本文使用AutoLisp及VisualLisp实现二次开发。
2 室内软件设计
利用CAD 图像和编制及程序实现计算参数的提取,同预先设计计算参数相结合实现房间参数的计算,通过CAD 图形实现计算结果的绘制,之后通过Excel 文件格式生成计算书[5]。
在硬件设计过程中,其主要配置需求为:硬盘的容量为20 GB 以上,内存为128 MB 以上。利用VB 编程及AutoCAD 实现二次开发,安装是通过Excel 软件实现。
2.1 功能界面的设计
软件的功能界面主要包括AutoCAD 软件的绘图界面及二次开发的功能界面,前者能够实现AutoCAD 软件的自身功能;后者能够有效设计室内系统。
2.2 功能模块的设计
图2 为主要的功能模块设计流程。
图2 主要的功能模块设计流程Fig.2 Design flow chart of main function modules
2.2.1 墙线绘制模块
打开二次开发功能节点,并且点击轴线绘制按钮,利用会话界面能够绘制墙面,在轴网创建以后,通过VB程序就能够对CAD 图形墙轴线信息进行调用,实现墙轴线的复制,以墙体实际厚度进行实现,使其成为墙面,对墙面实现WALL图形的定义。利用墙轴线的相交点创建墙线,从而能够有效绘制墙线[6]。图3为墙线绘制的流程。
图3 墙线绘制流程Fig.3 Flow chart of drawing wall lines
2.2.2 门窗添加模块
输入参数化门窗尺寸,通过针对性的程序及CAD软件有效绘制界面。在对门窗进行添加时要求鼠标能够和其贴近,从而添加门窗墙线,通过VB 程序对墙线方向进行判断,并且对门窗的方向进行调整,使其和墙线的方向相同。另外,在安装的过程中要求实现门窗墙线的安装,VB 程序能够利用安装的位置需求及宽度绘制门窗,并且对门内墙线进行自动修剪[7],门窗添加流程如图4 所示。
图4 门窗添加流程Fig.4 Flow chart of adding doors and windows
2.2.3 散热器模块的布置
基于标准图块对散热器进行绘制,分别使所有标准图块在CAD 图形文件中单独保存,方便后期的调用,还能够实现全新图块的添加。设计人员能够基于图块选择散热器的布置方式,对所有散热器布置的方式进行点选,利用VB 程序对图块进行随时调用,利用设置的参数在CAD图形中插入图块,图5为散热器界面的布置界面。
图5 散热器界面的布置界面Fig.5 Layout of radiator interface
2.2.4 埋地盘管模块的绘制
埋地盘管布置是室内设计的重点,以计算房间热负荷的结果,VB 程序对此房间埋地盘管间距进行自动计算,默认的埋地盘管规格为20 mm 外径。通过设计人员预先设置埋地盘管的布置方式、弯曲半径和墙的间距,VB 程序以设置的房间对埋地盘管进行自动绘制[8]。
2.3 室内设计的细节
设计人员能够再次设计室内细节,利用图库中的真实图片,将细节渲染图及图形展现出来,还能够在扫描仪中实现真实图片的扫描。之后,通过图像的扫描实现自定义装饰面的创建,另外,还能够添加细微凹凸面,从而实现逼真渲染图的制作。
室内设计人员能够利用即时渲染充分展现室内空间色彩和材质,还能够有效选择多灯光、材质,利用对比实现最佳方案的选择。室内设计师能够有效控制室内设计效果,避免传统设计过程中大量的调整图片步骤、昂贵成本的效果图渲染,室内设计师能够通过revit 使建筑信息模型中真实的照明情况及精准材质、饰面实现渲染图的制作,实现在设计过程中制作逼真的效果。虽然revit 渲染器中的材质灯光渲染速度有所提高,室内设计师还需使用revit 模型及渲染图片为制作人员提供所需的设计图,从而对其再次润色,才能够将设计意图精准地表现出来,从而降低返工率。
2.4 室内设计效果三维性
设计师能够利用链接图形设计和其他设备的专业revit 文件,全面掌握室内立体及空间的状态,能够随意在三维及二维之间进行切换,从而将空间的缺点、优点充分挖掘出来,实现空间自身特点的开发和设计,而并不是套用某张图片。利用更换不同视角,从而真实感受室内设计立体性,通过立体特点实现设计。
3 室内设计软件的实现
对参数化模块需求添加程序标准图块,优先输入旋转方向、缩放尺寸、比例等参数,通过程序在CAD 中实现合适文字、图形、设备的绘制。一个图形保存到单独CAD 文件中,利用多CAD 图块实现聚集,利用不同的数据库实现针对性的调用,还能够实现全新制作图块的添加。通过窗口提示的需求,程序就能够方便地对多方式图块进行选择,在文件中实现相应图块的插入。图6 为绘图功能实现的流程图,以下为功能实现的代码:
图6 绘图功能实现的流程图Fig.6 Realization flow chart of drawing function
本文在办公室实现测试,利用Radeon 9550 独立显卡、CPU C2.0 GB、1 GB 内存、80 GB 硬盘及10/100 自适应RTL8139 网卡等配置电脑,从而实现测试。
以下为测试内容及结果:
1)插入图块。在图形中实现插入图块的10 次测试,全部成功,图块插入的平均时间为1 s;
2)设计管线。将管线间距输入进去,实现不同供回水间距热力管道绘制,在进行绘制过程中具有较高的流畅度;
3)散干互联。在系统中选择供回水管道及散热器,实现供回水管道和散热器立管的自动连接,一共测试10 次,10 次全部成功;
4)计算散热器。输入参数,对散热器进行计算,计算结果表示与现实计算结果一致。
5)系统图的生成。点击供回水管线的始端,实现自动系统图的生成,其生成系统图的位置精准,速度也比较快。
4 结 语
室内设计师利用室内工程制图主要表现就是通过手绘阶段进入到电脑制图阶段,而且市场中很少利用手绘方式对大量施工图进行绘制,而是利用CAD 软件代替。CAD 是使用较为广泛的设计软件,其是一种高效且快捷的设计手段,且CAD 全新功能也备受室内设计人员的喜欢。通过本文分析表示,CAD 设计功能强大,能够使室内设计及绘图效率得到进一步的提高。