最近在论坛有人问这个问题,刚好我做过类似例子,就发在这里
这是我在8.3的时候做的,9下面可能会有变动程序如下:
'让影像3维显示----------------------
Public Sub GetBaseHeight(SVC As SceneViewerCtrl, pBL As ILayer, pSL As ILayer, ByVal dZ As Double)
On Error GoTo errH
Dim p3Dpro As I3DProperties
Set p3Dpro = Get3DPropsFromLayer(pSL)
p3Dpro.BaseOption = esriBaseSurface
Dim pS As ISurface
Set pS = GetSurfaceFromLayer(pBL)
Set p3Dpro.BaseSurface = pS
p3Dpro.Apply3DProperties pSL
p3Dpro.ZFactor = dZ
SVC.SceneGraph.RefreshViewers
Exit Sub
errH:
MsgBox "GetBaseHeight出现异常错误,错误为:" & Err.Description
End Sub