VB基于AutoCAD的自动成图系统开发及其应用(17)
时间:2017-01-03 13:30 来源:毕业论文 作者:毕业论文 点击:次
(2)功能冗杂,操作效率低下。AutoCAD功能强大,我们建筑结构专业却只用了其中少量的一部分。首先目前我们没有用到其三文绘图功能,我们几乎全部都是二文平面绘图;其次我们很大程度上只是用了其简单的直线绘图,并没有像机械行业那样用了其复杂的曲线绘制功能;最后我们只用到了其中line、copy等少数简单的命令,其它复杂的镜像、旋转等命令我们极少用到,等等。AutoCAD它虽然使我们摆脱了睡图板、爬格子的辛苦,但是它的这些缺陷并没有满足专业所需要的快速、准确、明了的画图要求。它只是系统软件上面的支撑软件,不是我们要的针对专门领域的而开发的应用软件。所以我们必须在其基础上进行适合本专业的二次开发。 4.3.2 结构工程对AutoCAD二次开发的方法分析 AutoCAD具有强大的二次开发能力,它有开放的体系、完善的接口。首先它自身包含有的Visual LISP开发环境易学易用。其次它为其它应用程序开放接口。VBA(Visual Basic for Applications)已经成为其嵌入式开发环境,ActiveX接口函数可以获取和修改任何AutoCAD对象,ObjectARX程序共享其动态地址几乎可以控制AutoCAD的一切。因此可以方便的运用高级语言进行二次开发。其开放的结构体系,这为我们进行二次开发提供了可能性。因此为了充分发挥CAD的效能,我们必须进行适合自己的二次开发。 二次开发就是把商品化、通用化的 CAD/CAM系统用户化、本地化的过程,即以优秀的CAD/CAM系统为基础平台、研制开发符合国家标准、适合企业实际应用的用户化、专业化、集成化软件。因此不同专业不同平台不同目的的二次开发方法不尽相同。结构专业的AutoCAD二次开发软件思路归结起来主要有以下几个方面。 (1)开发参数化绘图工具 参数化绘图就是对定型构件通过参数控制从而自动生成图形。在结构施工图中许多构件都可以参数化绘制,最典型的就是参数化输入轴网和参数化绘制楼梯。笔者以参数化绘制楼梯立面及祥图为例。参数化绘图的要点是对图形几个主要控制参数的选取[10]。 如图4.4所示的楼梯剖面图主要由以下几个参数控制:踏步宽度b,踏步高 度h,踏步数目n,首踏步距梁距离L2,末踏步距梁距离L3,梯板厚度q。开发参数化绘图工具后,每次只需要输入这几个参数CAD就能自动画出楼梯了。 图4.4 参数化楼梯示意图 其主要代码如下:Private Sub CommandButton1_Click() Dim varRet As Variant varRet=ThisDrawing Utility.GetPoint ( _ ,"输入插入点: " ) p0(0)=CStr(varRet(0)) p0(1)=CStr(varRet(1)) p0(2)=CStr(varRet(2)) p1(0)=p0(0)+2000 p1(1)=p0(1) p1(2)=p0(2) for i=1to n x=i+1 px(0)=p1(0)+(i-1)*b px(1)=p0(1)-i*h px(2)=p0(2) y=n+i+1 py(0)=p1(0)+i*b py(1)=p0(1)-i*h py(2)=p0(2) end for pe(0)=p1(0)-sqr(b*b+h*h)*q/b-b*(h-100)/h pe(1)=p1(1)-100 pe(2)=p0(2) f=n+1 pg(0)=pf(0)-100*h/b pg(1)=pf(1)-100 pf(2)=p0(2) Set Culine = ThisDrawing.ModelSpace.AddLine(p1, p2) for i=2to n+1 x=i+n y=i+1 Set Culine = ThisDrawing.ModelSpace.AddLine(pi, px) Set Culine = ThisDrawing.ModelSpace.AddLine(px, py) End for Set Culine = ThisDrawing.ModelSpace.AddLine(pe, pg) End Sub 参数化绘图大大提高了我们的作图效率,使我们有了适合于我们专业的工具,不在拘泥于一点一线的原始方式。它有利于绘制出高质量的图。目前参数化绘图依然是我们二次开发的主要方向之一,我们将不断开发出各种各样的参数化绘图工具。 (2)专业辅助图库开发[11] 由于计算机可以方便的对大量的设计资料进行管理,同时又因为土木工程专业有大量的标准样图,我们可以分门别类的做出各种各样丰富多彩的图库。做图库其实质上就是建立CAD辅助数据库。上学期我们学CAD时,在课后作业中遇到的沙发、床等家具不需要自己画,我们都是从网上或者老师给的图库中粘贴过来的。如果我们在CAD中建立一个图库把我们常用的图都放进去并分类存好,那么我们再需要用的时候就可以直接从CAD中直接调出使用了。比起每次都去别的地方找图,这可以节省很多时间。因此建立一个适合属于自己的图库非常必要。如图4.5所示为一个常用图库对话框。 (责任编辑:qin) |