明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 1821|回复: 2

求助:GetTopLevelBlocks是在哪定义的?

[复制链接]
发表于 2011-12-30 19:54:54 | 显示全部楼层 |阅读模式
  1. Dim myDB As New Database(False, True)
  2.                     
  3. myDB.ReadDwgFile(ligneF, IO.FileShare.ReadWrite, True, "")

  4.                     
  5. Using mytrans As Transaction = myDB.TransactionManager.StartTransaction
  6.                         
  7. For Each myBlockName As String In GetTopLevelBlocks(myDB)
  8.                            
  9. For Each BRefID As ObjectId In GetBRefIDs(myDB, myBlockName)
  10.                                 
  11. If myBlockName = "DANCART" Then
  12. 。。。
如上代码,在vb2008 express里说GetTopLevelBlocks没定义。应该import什么模块?

谢谢

发表于 2011-12-30 22:33:59 | 显示全部楼层
是 这个函数么, 在这里看来的
http://forums.augi.com/showthread.php?t=135845


Function GetTopLevelBlocks(ByVal DatabaseIn As Database) As List(Of String)
        Dim myList As New List(Of String)
        Using myTrans As Transaction = DatabaseIn.TransactionManager.StartTransaction
            Dim myBT As BlockTable = DatabaseIn.BlockTableId.GetObject(OpenMode.ForRead)
            For Each myBTRid As ObjectId In myBT
                Dim myBTR As BlockTableRecord = myBTRid.GetObject(OpenMode.ForRead)
                If myBTR.IsAnonymous = False And myBTR.IsLayout = False And _
    myBTR.IsFromExternalReference = False And _
    myBTR.IsDependent = False Then
                    myList.Add(myBTR.Name)
                End If
            Next
        End Using
        Return myList
    End Function
 楼主| 发表于 2011-12-31 10:27:59 | 显示全部楼层
原来如此。还以为是公有函数呢。原来是自己编的。

还有这个函数GetBRefIDs。

只能自己想了。

谢谢
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2024-11-25 18:37 , Processed in 0.148238 second(s), 25 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表