24小时热门版块排行榜    

查看: 1600  |  回复: 5

zzahkj

木虫 (著名写手)


[交流] AE如何实现沿路径鸟瞰飞行功能?

如何用VB.net或C#.net实现沿路径鸟瞰飞行?效果图如下,如果我想做一个如图中的飞机,该怎么做?我不大懂编程,所以从网上抄了一段代码(见下)可是发现在按指定路径飞行时,不能实现鸟瞰功能,甚至飞行在三维图的下面,是不是观察角度不对,由于不是很懂代码,所以不知该怎么做?请高手指点一下!谢谢!
CODE:
Public Sub CreateAnimationFromPath(ByVal scene As IScene, ByVal pPline As ESRI.ArcGIS.Geometry.IPolyline)
        Dim basicScene2 As ESRI.ArcGIS.Analyst3D.IBasicScene2 = scene
        Dim animationExtension As ESRI.ArcGIS.Animation.IAnimationExtension = basicScene2.AnimationExtension
        Dim geometry As ESRI.ArcGIS.Geometry.IGeometry = pPline
        Dim agAnimationUtils As IAGAnimationUtils = New ESRI.ArcGIS.Animation.AGAnimationUtilsClass()
        Dim agImportPathOptions As IAGImportPathOptions = New ESRI.ArcGIS.Animation.AGImportPathOptionsClass()
        agImportPathOptions.BasicMap = scene
        agImportPathOptions.AnimationTracks = animationExtension.AnimationTracks
        agImportPathOptions.AnimationType = New ESRI.ArcGIS.Analyst3D.AnimationTypeCameraClass()
        agImportPathOptions.AnimatedObject = scene.SceneGraph.ActiveViewer.Camera
        agImportPathOptions.PathGeometry = geometry
        agImportPathOptions.ConversionType = ESRI.ArcGIS.Animation.esriFlyFromPathType.esriFlyFromPathObsAndTarget
        agImportPathOptions.LookaheadFactor = 1
        agImportPathOptions.RollFactor = 0
        'agImportPathOptions.SimplificationFactor = 100
        agImportPathOptions.VerticalOffset = Height + 1000
        agImportPathOptions.ReversePath = False
        agImportPathOptions.AnimationEnvironment = animationExtension.AnimationEnvironment
        Dim AGAnimationContainer As IAGAnimationContainer = animationExtension.AnimationTracks.AnimationObjectContainer
        ' Call "CreateFlybyFromPath"
        agAnimationUtils.CreateFlybyFromPath(AGAnimationContainer, agImportPathOptions)
        Dim animPlayer As IAGAnimationPlayer = New AGAnimationUtilsClass()
        animPlayer = agAnimationUtils
        animPlayer.PlayAnimation(animationExtension.AnimationTracks, animationExtension.AnimationEnvironment, Nothing)
    End Sub
    Private Sub ButtonItem11_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ButtonItem11.Click
        Dim scene As IScene
        scene = AxSceneControl1.Scene
        Dim pFeatureLayer As IFeatureLayer = Me.AxSceneControl1.Scene.Layer(0)
        Dim pFeatureCursor As IFeatureCursor = pFeatureLayer.FeatureClass.Search(Nothing, False)
        Dim pFeature As IFeature = pFeatureCursor.NextFeature()
        Dim pPline As ESRI.ArcGIS.Geometry.IPolyline
        pPline = pFeature.Shape
        CreateAnimationFromPath(scene, pPline)
    End Sub

回复此楼

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

» 抢金币啦!回帖就可以得到:

查看全部散金贴

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

蓝色天空2380

至尊木虫 (小有名气)



小木虫(金币+0.5):给个红包,谢谢回帖
还是菜鸟 ,不懂。。。学习中。。。
2楼2011-05-31 22:24:01
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

zzahkj

木虫 (著名写手)


引用回帖:
Originally posted by 蓝色天空2380 at 2011-05-31 22:24:01:
还是菜鸟 ,不懂。。。学习中。。。

我也不懂  所以请教高手回答
3楼2011-05-31 22:33:55
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

liuyang_bnu

金虫 (小有名气)



小木虫(金币+0.5):给个红包,谢谢回帖
也感兴趣,不会,帮你顶!
4楼2011-06-21 17:23:10
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

emptylly

新虫 (初入文坛)



小木虫: 金币+0.5, 给个红包,谢谢回帖
顶起~~!!!!!!!!
5楼2012-04-04 07:01:44
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

zhoujie0713

新虫 (初入文坛)


学习一下
6楼2015-12-24 11:01:37
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 zzahkj 的主题更新
普通表情 高级回复 (可上传附件)
信息提示
请填处理意见