通过SDE将栅格图像导入到数据为中

本文介绍了一个用于将本地栅格数据集加载到ArcSDE数据库中的Visual Basic过程。该过程通过设置ArcSDE连接信息,指定输入栅格文件路径及名称,定义输出栅格数据集名称来实现。此外,还设置了空间参考、压缩类型、金字塔选项等参数。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Public Sub LoadToSDE(sDir As String, sInput As String, sServer As String, sInstance As String, _
sDB As String, sUser As String, sPasswd As String, sSDERaster As String)

' sDir: the directory where the input raster resides
' sInput: the name of input raster
' sServer,sInstance,sDB,sUser,sPasswd: ArcSDE connection info
' sSDERaster: the output ArcSDE raster dataset name
On Error GoTo eh
Dim pSDEConn As IRasterSdeConnection
Dim pSDEStorage As IRasterSdeStorage
Dim pSDEOp As IRasterSdeServerOperation
Dim pRasterWsFact As IWorkspaceFactory
Dim pRasterWS As IRasterWorkspace
Dim pGeoDs As IGeoDataset

' Initialize RasterSDELoader
Set pSDEConn = New RasterSdeLoader
' Make connection
pSDEConn.ServerName = sServer
pSDEConn.Instance = sInstance
pSDEConn.Database = sDB
pSDEConn.UserName = sUser
pSDEConn.Password = sPasswd
pSDEConn.InputRasterName = sDir & "\" & sInput
pSDEConn.SdeRasterName = sSDERaster

' Set storage parameters
Set pSDEStorage = pSDEConn
' Get spatialreference
Set pRasterWsFact = New RasterWorkspaceFactory
Set pRasterWS = pRasterWsFact.OpenFromFile(sDir, 0)
Set pGeoDs = pRasterWS.OpenRasterDataset(sInput)
' Set spatialreference
Set pSDEStorage.SpatialReference = pGeoDs.SpatialReference
' Set compression
pSDEStorage.CompressionType = esriRasterSdeCompressionTypeUncompressed
' Set tilesize
pSDEStorage.TileHeight = 128
pSDEStorage.TileWidth = 128
' Pyramids option
pSDEStorage.PyramidOption = esriRasterSdePyramidBuildWithFirstLevel
pSDEStorage.PyramidResampleType = RSP_BilinearInterpolation
pSDEStorage.CompressionType = esriRasterSdeCompressionTypeJPEG2000

' Start loading
Set pSDEOp = pSDEConn

pSDEOp.Create
pSDEOp.Update
' Calculate stats
pSDEOp.ComputeStatistics

' Cleanup
Set pSDEConn = Nothing
Set pSDEStorage = Nothing
Set pSDEOp = Nothing
Set pRasterWsFact = Nothing
Set pRasterWS = Nothing
Set pGeoDs = Nothing

Exit Sub
eh:
MsgBox Err.Description, vbInformation, "LoadToSDE" '错误处理

End Sub
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值