VB

    技术2022-05-11  55

    Public Sub LoadCadDrawingLayer()  Dim pMxDoc As IMxDocument  Dim pCadLayer As ICadLayer  Dim pCadDrawingDataset As ICadDrawingDataset    Set pMxDoc = Application.Document  Set pCadDrawingDataset = GetCadDataset("F:/CAD文件/dwg", "105-604-15.dwg")  If pCadDrawingDataset Is Nothing Then Exit Sub  Set pCadLayer = New CadLayer  Set pCadLayer.CadDrawingDataset = pCadDrawingDataset  pCadLayer.Name = "e-51878.dwg" 'Give the map layer a name  pMxDoc.FocusMap.AddLayer pCadLayer  pMxDoc.UpdateContents 'Update the TOCEnd Sub

    Private Function GetCadDataset(strCadWorkspacePath As String, strCadFileName As String) As ICadDrawingDataset  Dim pName As IName  Dim pCadDatasetName As IDatasetName  Dim pWorkspaceName As IWorkspaceName    On Error GoTo ErrorHandler    'Create a WorkspaceName object  Set pWorkspaceName = New WorkspaceName  pWorkspaceName.WorkspaceFactoryProgID = "esriDataSourcesFile.CadWorkspaceFactory"  pWorkspaceName.PathName = strCadWorkspacePath    'Create a CadDrawingName object  Set pCadDatasetName = New CadDrawingName  pCadDatasetName.Name = strCadFileName  Set pCadDatasetName.WorkspaceName = pWorkspaceName    'Open the CAD drawing  Set pName = pCadDatasetName 'QI  Set GetCadDataset = pName.Open  Exit Function  ErrorHandler:  Set GetCadDataset = NothingEnd Function


    最新回复(0)