阅读:1718回复:0
AO中加载SDE中的Raster数据
Public Function GetRasterFromSDE(sServer As String, sInstance As String, _
sUser As String, sPassword As String, sSDERaster As String, Optional version As String = "SDE.DEFAULT") As IRasterDataset '加载栅格函数 ' sServer,sInstance,sDB,sUser,sPasswd: ArcSDE connection info ' sSDERaster: the ArcSDE raster dataset name Dim pSDEWs As IWorkspaceName Dim pSDEPropertySet As IPropertySet Dim pSDERasterDataset As IRasterDataset Dim pDsName As IDatasetName Dim pName As Iname ' Dim sQualifiedName As String ' Get connection propertyset Set pSDEPropertySet = New PropertySet With pSDEPropertySet .SetProperty "Server", sServer .SetProperty "Instance", sInstance ' .SetProperty "Database", sDB .SetProperty "User", sUser .SetProperty "Password", sPassword .SetProperty "Version", version End With ' Get workspacename Set pSDEWs = New WorkspaceName pSDEWs.ConnectionProperties = pSDEPropertySet pSDEWs.WorkspaceFactoryProgID = "esricore.sdeworkspacefactory" ' Get raster dataset name Set pDsName = New RasterDatasetName pDsName.Name = sSDERaster Set pDsName.WorkspaceName = pSDEWs Set pName = pDsName ' Open ArcSDE raster dataset Set pSDERasterDataset = pName.Open ' Cleanup Set GetRasterFromSDE = pSDERasterDataset Set pSDEWs = Nothing Set pSDERasterDataset = Nothing Set pSDEPropertySet = Nothing Set pName = Nothing Set pDsName = Nothing End Function |
|
|