• VB中对AutoCAD对象图形文件操作


    AutoCAD图形的绘制、编辑均在其图形文件中进行,可以利用VB代码创建新的文件、打开已有文件、保存文件等。

    VB中按按照以下步骤创建新的图形文件。

    首先将VB于AutoCAD进行链接,可以用到典型的链接代码,然后在VB工程窗体中添加一个按钮用来由用户创建新的CAD图形文件,应用按钮的单击事件,在按钮上添加如下代码创建新的图形文件。

    Private Sub Command1_Click()
        acadapp.Documents.Add
    End Sub

    这里利用Acadapp对象的下一级对象Documents的Add方法,以默认文件名创建新的图形文件。

    VB中打开已有图形文件的代码如下。

    Private Sub Command2_Click()
        Dim myfilename As String
        myfilename = "这里是已有文件的路径"
        If Dir(myfilename) <> "" Then
            acadapp.Documents.Open myfilename
        Else
            MsgBox ("文件不存在")
        End If
    End Sub

    Dir函数用来检测要打开的图形文件是否存在,利用公用对话框CommonDialog控件的ShowOpen方法,可以让用户自行选择要打开的图形文件,用CommonDialog控件的FileName属性返回用户在对话框中选择的路径和文件名,并将其复制给myfilename变量。

    VB中保存CAD图形文件的代码如下。

    Private Sub Command3_Click()
        acadapp.ActiveDocument.Save
    End Sub

    也可以使用SaveAs方法,以指定的文件名和保存路径保存文件。

    Private Sub Command4_Click()
        acadapp.ActiveDocument.SaveAs "这里是要指定文件路径和文件名"
    End Sub

    可以先对图形文件被修改过之后是否进行保存进行判断,如果进行过保存,则以当前文件名和文件路径保存文件,否则不保存文件。

    Private Sub Command5_Click()
        If Not acadapp.ActiveDocument.Saved Then
            If MsgBox("是否保存文件?", vbYesNo) = vbYes Then
                acadapp.ActiveDocument.Save
            End If
        End If
    End Sub

    利用Close方法以当前文件名和路径保存修改过后的文件,然后关闭图形文件。

    Private Sub Command6_Click()
        acadapp.ActiveDocument.Close
    End Sub

    如果在Close函数后加上参数False,则表示不保存修改,直接关闭文件。

    Private Sub Command6_Click()
        acadapp.ActiveDocument.Close (False)
    End Sub

    为了和其他图形处理文件进行交互工作,利用文件的导入导出功能将其它格式的文件导入到AutoCAD中进行编辑或将AutoCAD图形文件保存成其它格式的文件,方便用其它软件进行处理。

    导入文件用到文档对象的Import方法,可以导入SAT、EPS、DXF或WMF格式的文件,语法如下:objcet.Import(filename,InsertPoint,ScaleFactor)。导入文件代码如下。

    Private Sub Command7_Click()
        Dim importfile As String
        Dim insertpoint(0 To 2) As Double
        Dim scalefactor As Double
        importfile = "这里是需要导入的文件名和路径"
        insertpoint(0) = 0#: instertpoint(1) = 0#: insertpoint(2) = 0#
        scalefactor = 2
        acadapp.ActiveDocument.Import.importfile , insertpoint, scalefactor
        ZoomExtents
    End Sub

    利用文档对象的Export方法,可以将AutoCAD制作的图形用WMF、SAT、EPS、DXF或BMP格式导出并保存,语法objcet.export filename,extentsion,selectionset。导出文件代码如下。

    Private Sub Command8_Click()
        Dim explortfile As String
            explortfile = ""
        Dim sset As AcadSelectionSet
        Set sset = acadapp.ActiveDocument.SelectionSets.Add("TEST")
        acadapp.ActiveDocument.Export.explortfile , "WMF", sset
        sset.Delete
    End Sub

    作者:codee
    文章千古事,得失寸心知。


  • 相关阅读:
    穷举 迭代 while
    for 循环
    switch case
    if else 语句
    数据类型
    语句的输入、输出
    控件——DataGridview
    mysql-bin.000001文件的来源及处理方法
    /var/log目录下的20个Linux日志文件功能详解
    CountDownLatch
  • 原文地址:https://www.cnblogs.com/bimgoo/p/2503121.html
Copyright © 2020-2023  润新知