AutoCAD的矿图符号库设计(2)_毕业论文

毕业论文移动版

毕业论文 > 计算机论文 >

AutoCAD的矿图符号库设计(2)

1。1。2  主要研究内容和技术路线

本文中主要使用VBA 进行编程,实现对矿图符号的设计与开发。VBA是Visual Basic for Applications的英文缩写,它是一个功能强大的开发工具,许多仅用ACAD命令无法完成的任务,就需要VBA来实现。

矿图符号库的制作基本分为两个大的方面,一部分是独立地物符号的制作,如井下水准基点、背斜、见煤钻孔等;另一部分则是矿图制图中常用的线型、线宽以及设备设施,如采回边界、石门、水闸门等。

为形成完整的数据库,建立宏并应用于菜单栏或工具条中,以便选取符号进行使用。参考了常用矿图符号表,对上述两大部分不同点状、线状及面状地物符号使用编程的方式达到自动绘制。

2 模型空间(modelspace)及图块(block)

在设计符号之前,首先要了解模型空间及图块的定义,集合对象是预先定义的对象,模型空间集合和图块对象就是集合对象,包含所有相似对象的实例。模型空间集合是所有存在于模型空间中图形对象(图元);图块对象则是存在于所定义的图块中的所有图元。当CAD的自带图形无法满足对符号设计的需求时,就可在模型空间中自主绘制想要的图元,然后将其定义为一个图块,将零散的点,线,面合成一个整体,从而达到设计的目的。

以水准基点(图2-1)为例创建一个块,并向块中添加圆和直线:

图2-1 水准基点

水准基点代码如下:

'绘制水准基点

Sub point2()

     '获取点

    Dim p1 As Variant

    p1 = ThisDrawing。Utility。GetPoint(, vbCrLf & "点:")

    '创建一个块

    Dim block2 As AcadBlock

    Dim p2(0 To 2) As Double

    p2(0) = 0论文网

    p2(1) = 0

    p2(2) = 0

    Set block2 = ThisDrawing。Blocks。Add(p2, "cb2")

     '在块中添加圆

    Dim tx1 As AcadCircle

    Dim xy(0 To 2) As Double

    Dim r As Double

    xy(0) = 1: xy(1) = 1: xy(2) = 0

    r = 0。75

    Set tx1 = block2。AddCircle(xy, r)

    '在块中添加直线

    Dim tx2 As AcadLine

    Dim sp(0 To 2) As Double

    sp(0) = 0。25: sp(1) = 1: sp(2) = 0

    Dim ep(0 To 2) As Double

    ep(0) = 1。75: ep(1) = 1: ep(2) = 0

    Set tx2 = block2。AddLine(sp, ep)

    '在块中添加直线

    Dim tx3 As AcadLine

    Dim sp1(0 To 2) As Double

    sp1(0) = 1: sp1(1) = 1。75: sp1(2) = 0

    Dim ep1(0 To 2) As Double

    ep1(0) = 1: ep1(1) = 0。25: ep1(2) = 0

    Set tx3 = block2。AddLine(sp1, ep1)

     '插入块

    Dim blockref2 As AcadBlockReference

    p2(0) = p1(0)

    p2(1) = p1(1)

    p2(2) = p1(2)

    Set blockref2 = ThisDrawing。ModelSpace。InsertBlock(p2, "cb2", 1#, 1#, 1#, 0)

    '更改块图层为矿区

    blockref2。Layer = "矿区"

    blockref2。Update

End Sub

3 矿图符号设计

3。1  独立地物符号设计

矿图中有许多特有的独立地物符号,不同的地物符号要有一定的区分度,根据符号的不同含义,设计原则也有所不同。独立地物基本上可分为点状、线状及面状三大类,包含控制点、钻孔及巷道等。 (责任编辑:qin)