`
菜菜土人
  • 浏览: 11525 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

VB

 
阅读更多

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 TOC
End 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 = Nothing
End Function


分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics