zoukankan      html  css  js  c++  java
  • ArcGlobe组件开发之动画1——动画的两种实现方式

    动画的实现方式主要有两种:IAnimationTrack和ICamera。

    一、Animation

    (1)、基于关键帧

    (2)、设置每个关键帧的ImeStamp来确定播放时间(该帧占总播放时间的百分比)

    (3)、便于使用,集成了视频输出接口。可输出.AVI

    二、Camera

    两个位置

    - Observer:Camera所在的位置
    - Target:Camera所指向的位置
    • 获取位置
    - GetObserverLatLonAlt
    - GetTargetLatLonAlt
    • 设置位置
    - SetObserverLatLonAlt
    - SetTargetLatLonAlt

    - 注意:这两个方法所设置的高度的单位必须是千米

    • 实现方式
    - 通过设置GlobeCamera的Observer和Target来控制视角。
    - 使用Timer控制来控制时间。
    • 特点:
    - 麻烦!
    - 可精确控制,实现Animation所不能实现的功能

    三、ArcGlobe中的导航模式

    (1)ArcGlobe下的导航模式是通过 使用照相机对象实现的。所有 3D 视图都对应一个包含观察点位置(observer,照相机在3D视图中的位置)和目标位置(Target,   即照相机对准的3D点)的照相机。

    (2)所有的3D导航方法都是通过控制以XYZ表示的Observer和Targeter的位置来实现的。

    - 移动观察点位置来从不同角度查看同一点。
    - 移动目标位置来从同一个位置查看其他点。
    - 同时移动观察点和目标位置可以在 3D 视图中飞行或移动到全新区域。

    四、综合比较两种方式,基于Camera的实现方法较为精确,但是较为复杂,需要不停的变换Observer和Targeter的位置。基于Animation的方法则创建关键帧,通过控制 播放时间来实现动画。接下来的博文将分别介绍基于以上两种方法所实现的动画。




  • 相关阅读:
    MySQL索引类型
    Spring+Quartz框架实现定时任务(集群,分布式)
    搭建Nginx+Java环境(转)
    windows环境下将csv文件导入mysql
    哈利波特折扣
    第二阶段个人总结06
    第二阶段个人总结05
    第二阶段个人总结04
    第二阶段个人总结03
    学习进度条——第13周
  • 原文地址:https://www.cnblogs.com/giser-whu/p/3707073.html
Copyright © 2011-2022 走看看