com.supermap.realspace

类 FlyManager

  • java.lang.Object
    • com.supermap.data.InternalHandle
      • com.supermap.data.InternalHandleDisposable
        • com.supermap.realspace.FlyManager
  • 所有已实现的接口:
    IDisposable


    public class FlyManager
    extends com.supermap.data.InternalHandleDisposable
    三维场景飞行管理类。
    • 构造器详细资料

      • FlyManager

        public FlyManager()
        默认构造函数,构造一个新的 FlyManager 对象。
    • 方法详细资料

      • dispose

        public void dispose()
        释放对象所占用的资源。
      • getRoutes

        public Routes getRoutes()
        返回路线集合。
        返回:
        路线集合。
      • getScene

        public Scene getScene()
        返回关联的场景。
        返回:
        关联的场景。
      • setScene

        public void setScene(Scene scene)
        设置关联的场景。
        参数:
        scene - 关联的场景。
      • play

        public void play()
        按照返回的路线集合(Routes)指定的路线开始飞行,或继续进行中断的飞行。
        示范代码:
        以下代码示范了如何按指定的路线继续飞行,假设三维场景处于飞行暂停的状态下。
                public void TestSceneFlyPlay() {
                    // 显示三维窗口
                    SceneControl sceneControl = new SceneControl();
                    Scene sceneObject = sceneControl.getScene();
                    //定义三维场景飞行管理类对象并设置其关联场景
                    FlyManager flyManager = new FlyManager();
                    flyManager.setScene(sceneObject);
                    //继续飞行
                    flyManager.play();
                }
             
      • stop

        public void stop()
        停止当前飞行。
        示范代码:
        以下代码示范了如何停止当前飞行,假设三维场景处于飞行的状态下。
                public void TestSceneFlyStop() {
                    // 显示三维窗口
                    SceneControl sceneControl = new SceneControl();
                    Scene sceneObject = sceneControl.getScene();
                    //定义三维场景飞行管理类对象并设置其关联场景
                    FlyManager flyManager = new FlyManager();
                    flyManager.setScene(sceneObject);
                    //停止当前飞行
                    flyManager.stop();
                }
             
      • pause

        public void pause()
        暂停当前飞行。
        示范代码:
        以下代码示范了如何暂停当前飞行,假设三维场景处于飞行的状态下。
                public void TestSceneFlyPause() {
                    // 显示三维窗口
                    SceneControl sceneControl = new SceneControl();
                    Scene sceneObject = sceneControl.getScene();
                    //定义三维场景飞行管理类对象并设置其关联场景
                    FlyManager flyManager = new FlyManager();
                    flyManager.setScene(sceneObject);
                    //暂停当前飞行
                    flyManager.pause();
                }
             
      • update

        public void update()
        更新飞行管理的内部计算。

        当改变了站点数据时,应调用update方法更新,比如设置站点的速度、时间、是否可见等等,都需要调用 update()。

      • getDuration

        public double getDuration()
        返回本次飞行(即当前整个路线)需要的总时间,单位为秒。

        注意:该属性需要在调用update方法之后使用。

        返回:
        本次飞行(即当前整个路线)需要的总时间。单位为秒。
      • setDuration

        public void setDuration(double value)
        设置本次飞行(即当前整个路线)的总时间,单位为秒。
        参数:
        value - 本次飞行(即当前整个路线)的总时间。单位为秒。
      • getProgress

        public double getProgress()
        返回本次飞行的当前进度,单位为秒。

        注意:该属性只有在飞行和暂停状态下可用,在停止时不可用

        返回:
        本次飞行的当前进度。单位为秒。
      • setProgress

        public void setProgress(double value)
        设置本次飞行的当前进度,单位为秒。
        参数:
        value - 本次飞行的当前进度。单位为秒。
      • getPlayRate

        public double getPlayRate()
        返回播放速率。
        返回:
        播放速率。
        默认值:
        默认值为 1.0。
      • setPlayRate

        public void setPlayRate(double value)
        设置播放速率。所设置的值的范围在0到100之间。当设置的值大于1.0时,沿飞行路径快速飞行,小于1.0时,沿飞行路径慢速飞行。
        参数:
        value - 播放速率。
      • getCurrentStopIndex

        public int getCurrentStopIndex()
        返回当前飞行所到的站点。

        注意:该属性只有在飞行和暂停状态下可用,在停止时不可用

        返回:
        当前飞行所到的站点。
      • setCurrentStopIndex

        public void setCurrentStopIndex(int value)
        设置当前飞行所到的站点。
        参数:
        value - 当前飞行所到的站点。
      • getStatus

        public FlyStatus getStatus()
        返回当前的飞行状态(停止,暂停,飞行中)。
        返回:
        当前的飞行状态
      • addStopArrivedListener

        public void addStopArrivedListener(StopArrivedListener l)
        添加一个用于接收飞行到达站点事件(StopArrivedEvent)的监听器。
        参数:
        l - 一个用于接收飞行指定站点事件的监听器。
      • removeStopArrivedListener

        public void removeStopArrivedListener(StopArrivedListener l)
        移除一个用于接收飞行到达站点事件(StopArrivedEvent)的监听器。
        参数:
        l - 一个用于接收飞行到达站点事件的监听器。
      • addStatusChangedListener

        public void addStatusChangedListener(StatusChangedListener l)
        添加一个用于接收飞行状态改变事件(StatusChangedListener)的监听器。

        飞行状态的常量类型可参见 FlyStatus 类。

        参数:
        l - 一个用户接收飞行状态改变事件的监听器。
      • removeStatusChangedListener

        public void removeStatusChangedListener(StatusChangedListener l)
        移除一个用于接收飞行状态改变事件(StatusChangedListener)的监听器。

        飞行状态的常量类型可参见 FlyStatus 类。

        参数:
        l - 一个用户接收飞行状态改变事件的监听器。
      • addPropertiesChangedListener

        public void addPropertiesChangedListener(PropertiesChangedListener l)
        添加一个用于接收飞行相关属性改变事件(PropertiesChangedListener)的监听器。
        参数:
        l - 一个用户接收飞行相关属性改变事件的监听器。
      • removePropertiesChangedListener

        public void removePropertiesChangedListener(PropertiesChangedListener l)
        移除一个用于接收飞行相关属性改变事件(PropertiesChangedListener)的监听器。
        参数:
        l - 一个用户接收飞行相关属性改变事件的监听器。
      • setIsDisposable

        public static void setIsDisposable(com.supermap.data.InternalHandleDisposable obj,
                                           boolean disposable)

Copyright © 2021–2024 SuperMap. All rights reserved.