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()
默认构造函数,构造一个新的 FlyManager 对象。
-
方法概要
所有方法 静态方法 实例方法 具体方法 限定符和类型 方法和说明 void
addPropertiesChangedListener(PropertiesChangedListener l)
添加一个用于接收飞行相关属性改变事件(PropertiesChangedListener
)的监听器。void
addStatusChangedListener(StatusChangedListener l)
添加一个用于接收飞行状态改变事件(StatusChangedListener
)的监听器。void
addStopArrivedListener(StopArrivedListener l)
添加一个用于接收飞行到达站点事件(StopArrivedEvent
)的监听器。void
dispose()
释放对象所占用的资源。int
getCurrentStopIndex()
返回当前飞行所到的站点。double
getDuration()
返回本次飞行(即当前整个路线)需要的总时间,单位为秒。double
getPlayRate()
返回播放速率。double
getProgress()
返回本次飞行的当前进度,单位为秒。Routes
getRoutes()
返回路线集合。Scene
getScene()
返回关联的场景。FlyStatus
getStatus()
返回当前的飞行状态(停止,暂停,飞行中)。void
pause()
暂停当前飞行。void
play()
按照返回的路线集合(Routes
)指定的路线开始飞行,或继续进行中断的飞行。void
removePropertiesChangedListener(PropertiesChangedListener l)
移除一个用于接收飞行相关属性改变事件(PropertiesChangedListener
)的监听器。void
removeStatusChangedListener(StatusChangedListener l)
移除一个用于接收飞行状态改变事件(StatusChangedListener
)的监听器。void
removeStopArrivedListener(StopArrivedListener l)
移除一个用于接收飞行到达站点事件(StopArrivedEvent
)的监听器。void
setCurrentStopIndex(int value)
设置当前飞行所到的站点。void
setDuration(double value)
设置本次飞行(即当前整个路线)的总时间,单位为秒。static void
setIsDisposable(com.supermap.data.InternalHandleDisposable obj, boolean disposable)
void
setPlayRate(double value)
设置播放速率。void
setProgress(double value)
设置本次飞行的当前进度,单位为秒。void
setScene(Scene scene)
设置关联的场景。void
stop()
停止当前飞行。void
update()
更新飞行管理的内部计算。
-
-
-
方法详细资料
-
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.