|
|||||||||
上一个类 下一个类 | 框架 无框架 | ||||||||
摘要: 嵌套 | 字段 | 构造方法 | 方法 | 详细信息: 字段 | 构造方法 | 方法 |
java.lang.Object com.supermap.ui.SceneControl
public class SceneControl
三维场景控件。
一个三维场景窗口(SceneControl)对应一个三维场景(Scene),即一个三维场景窗口中只能显示一个三维场景。
三维场景控件是通过对三维模型的可视化表达,即以视觉化的形式将它们表现出来,可以为用户提供一些二维地图数据无法直接提供的信息。三维可视化广泛应用于医学、军事、地质、勘探等领域。在三维GIS中,三维数据可视化可以真实地表现空间数据、逼真地模拟仿真地理信息现实,进而可以直观地展现用户感兴趣的数据。
在三维窗口中,滚动鼠标滚轮,可以进行三维场景的放大或缩小的操作;按住鼠标滚轮进行上下拖动,可以对三维场景的进行倾斜操作,如果按住鼠标滚轮进行左右拖动,可以对三维场景进行旋转,另外,使用shift+光标键(上下光标键和左右光标键)也可以实现三维场景的倾斜和旋转操作。
注意:当用户使用该三维场景控件对象进行编程时,如果将 Workspace 与 SceneControl 建立了关联,那么在进行对象的关闭时,一定需要注意关闭的顺序,如下:
1、关闭scene 对象;
2、关闭SceneControl对象;
3、关闭Workspace对象。
嵌套类摘要 | |
---|---|
static class |
SceneControl.Cursors
该类为 SceneControl 类的内部类,主要提供三维场景窗口中的默认光标。 |
构造方法摘要 | |
---|---|
SceneControl()
默认构造函数,构造一个新的 SceneControl 对象。 |
|
SceneControl(SceneType sceneType)
根据指定的sceneType构造一个新的SceneControl对象。 |
方法摘要 | |
---|---|
void |
addActionChangedListener(Action3DChangedEvent l)
添加一个用于三维场景控件操作状态改变事件( Action3DChangedEvent )的监听器。 |
void |
addObjectSelectedListener(ObjectSelectedListener l)
添加一个用于接收对象被选中事件( ObjectSelectedEvent )的监听器。 |
void |
addTrackedListener(Tracked3DListener l)
添加一个用于接收三维场景窗口的跟踪图层中鼠标交互绘制结束事件( Tracked3DEvent )的监听器。 |
void |
addTrackingListener(Tracking3DListener l)
添加一个用于接收三维场景窗口的跟踪图层中鼠标交互绘制事件( Tracking3DEvent )的监听器。 |
void |
dispose()
释放该对象所占用的资源。 |
void |
doKeyDown(java.awt.event.KeyEvent e)
当焦点在控件上按下键时执行 KeyDown 操作。 |
void |
doMouseDown(java.awt.event.MouseEvent e)
当指针在三维场景控件上,用户按下鼠标按钮时,将执行 MouseDown 操作。 |
void |
doMouseMove(java.awt.event.MouseEvent e)
当用户移动鼠标指针经过三维场景控件时,将执行 MouseMove 操作。 |
void |
doMouseUp(java.awt.event.MouseEvent e)
当指针保持在控件上,用户释放鼠标按钮时,执行 MouseUp 操作。 |
void |
doMouseWheel(java.awt.event.MouseWheelEvent e)
在鼠标滚轮转动时执行 MouseWheel 操作。 |
Action3D |
getAction()
返回三维场景操作状态。 |
Layer3D |
getActiveEditableLayer()
返回当前可编辑的图层。 |
Layer3D[] |
getEditableLayers()
返回三维场景窗口中的所有可编辑图层。 |
InteractionMode3D |
getInteractionMode()
返回当前三维场景控件的互操作模式。 |
NavigationControl |
getNavigationControl()
返回三维场景导航对象。 |
double |
getPanDatumPlane()
返回漫游基准面。 |
Scene |
getScene()
返回三维地图场景( Scene )对象。 |
SnapMode3D |
getSnapMode()
获取三维场景中的模型对象支持顶点捕捉。 |
boolean |
isAlwaysActive()
获取场景是否保持激活状态。 |
boolean |
isAlwaysUpdate()
返回三维场景是否在失去焦点时停止更新数据。 |
boolean |
isCursorCustomized()
返回当前场景控件的光标变化是否自定义。 |
boolean |
isDynamicSelection()
获取当鼠标滑动时,场景对象是否动态高亮显示。 |
boolean |
isFPSVisible()
返回三维场景控件的帧率信息是否可见。 |
boolean |
isKeyboardNavigationEnabled()
返回是否可以通过键盘进行导航漫游。 |
boolean |
isMouseNavigationEnabled()
返回是否可以通过鼠标进行导航漫游。 |
boolean |
isStatusBarShowAltitude()
获取状态条是否显示高度。 |
boolean |
isStatusBarVisible()
返回状态条是否可见。 |
boolean |
isWaitCursorEnabled()
返回当前场景窗口的等待光标是否有效。 |
void |
removeActionChangedListener(Action3DChangedEvent l)
移除一个用于三维场景控件操作状态改变事件( Action3DChangedEvent )的监听器。 |
void |
removeObjectSelectedListener(ObjectSelectedListener l)
移除一个用于接收对象被选中事件( ObjectSelectedEvent )的监听器。 |
void |
removeTrackedListener(Tracked3DListener l)
移除一个用于接收三维场景窗口的跟踪图层中鼠标交互绘制结束事件( Tracked3DEvent )的监听器。 |
void |
removeTrackingListener(Tracking3DListener l)
移除一个用于接收三维场景窗口的跟踪图层中鼠标交互绘制事件( Tracking3DEvent )的监听器。 |
void |
setAction(Action3D action3D)
设置三维场景操作状态。 |
void |
setActiveEditableLayer(Layer3D layer3D)
设置当前可编辑的图层。 |
void |
setAlwaysActive(boolean alwaysActive)
设置场景是否保持激活状态。 |
void |
setAlwaysUpdate(boolean value)
设置获三维场景是否在失去焦点时停止更新数据。 |
void |
setCursorCustomized(boolean value)
设置当前场景控件的光标变化是否自定义。 |
void |
setDynamicSelection(boolean value)
设置当鼠标滑动时,场景对象是否动态高亮显示。 |
void |
setFPSVisible(boolean value)
设置三维场景控件的帧率信息是否可见。 |
void |
setInteractionMode(InteractionMode3D value)
设置当前三维场景控件的互操作模式。 |
void |
setKeyboardNavigationEnabled(boolean value)
设置是否可以通过键盘进行导航漫游。 |
void |
setMouseNavigationEnabled(boolean value)
设置是否可以通过鼠标进行导航漫游。 |
void |
setPanDatumPlane(double value)
设置漫游基准面。 |
void |
setSnapMode(SnapMode3D value)
设置三维场景中的模型对象是否进行顶点捕捉。 |
void |
setStatusBarShowAltitude(boolean value)
设置状态条是否显示高度。 |
void |
setStatusBarVisible(boolean value)
设置状态条是否可见。 |
void |
setWaitCursorEnabled(boolean value)
设置当前场景窗口的等待光标是否有效。 |
从类 java.lang.Object 继承的方法 |
---|
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
构造方法详细信息 |
---|
public SceneControl()
SceneControl
对象。
public SceneControl(SceneType sceneType)
sceneType
- 指定的场景类型。方法详细信息 |
---|
public boolean isFPSVisible()
public void setFPSVisible(boolean value)
value
- 三维场景控件的帧率信息是否可见。public boolean isKeyboardNavigationEnabled()
public void setKeyboardNavigationEnabled(boolean value)
value
- 一个布尔值指定是否可以通过键盘进行导航漫游。public Layer3D getActiveEditableLayer()
MapControl.isMultiLayerEditEnabled()
的返回值为 true),则当前可编辑图层的默认值为可编辑图层的第一个图层,对对象的绘制和粘贴操作只作用在该图层上,而非所有的可编辑图层上。
public void setActiveEditableLayer(Layer3D layer3D)
MapControl.isMultiLayerEditEnabled()
的返回值为 true),则当前可编辑图层的默认值为可编辑图层的第一个图层,对对象的绘制和粘贴操作只作用在该图层上,而非所有的可编辑图层上。
layer3D
- 设置当前可编辑的图层。public boolean isMouseNavigationEnabled()
该方法决定了三维场景控件在运行的时候是否通过鼠标来进行导航漫游。当本方法返回值为 true 的时候,用户可以使用鼠标左键进行上下左右的导航显示,使用鼠标右键进行放大和缩小的漫游显示。
public void setMouseNavigationEnabled(boolean value)
该方法决定了三维场景控件在运行的时候是否通过鼠标来进行导航漫游。当本方法返回值为 true 的时候,用户可以使用鼠标左键进行上下左右的导航显示,使用鼠标右键进行放大和缩小的漫游显示。
value
- 一个布尔值指定是否可以通过鼠标进行导航漫游。public boolean isStatusBarVisible()
public void setStatusBarVisible(boolean value)
value
- 一个布尔值指定状态条是否可见。public Scene getScene()
Scene
)对象。
Scene
)对象。Scene
对象的默认值。public Action3D getAction()
Action3D
。
Action3D.PAN
。public void setAction(Action3D action3D)
Action3D
。
action3D
- 三维场景操作状态。public NavigationControl getNavigationControl()
NavigationControl
对象的默认值。public boolean isWaitCursorEnabled()
public double getPanDatumPlane()
漫游观察三维场景中高空物体时,物体偏移角度会随着其离地面的高度而增大,通过设置基准面,使其以基准面为参考平面进行漫游,可以减小这种偏移,便于观察。
public void setPanDatumPlane(double value)
漫游观察三维场景中高空物体时,物体偏移角度会随着其离地面的高度而增大,通过设置基准面,使其以基准面为参考平面进行漫游,可以减小这种偏移,便于观察。
value
- 漫游基准面。单位为米。public void setWaitCursorEnabled(boolean value)
value
- 当前场景窗口的等待光标是否有效。public boolean isCursorCustomized()
public void setCursorCustomized(boolean value)
value
- 当前场景控件的光标变化是否自定义。public InteractionMode3D getInteractionMode()
public void setInteractionMode(InteractionMode3D value)
通过该方法,可以实现在自定义鼠标、键盘的模式下与当前场景控件的交换操作。
value
- 当前三维场景控件的互操作模式。public Layer3D[] getEditableLayers()
public void doMouseDown(java.awt.event.MouseEvent e)
e
- 执行操作需要的参数。public void doMouseMove(java.awt.event.MouseEvent e)
e
- 执行操作需要的参数。public void doMouseUp(java.awt.event.MouseEvent e)
e
- 执行操作需要的参数。public void doMouseWheel(java.awt.event.MouseWheelEvent e)
e
- 执行操作需要的参数。public void doKeyDown(java.awt.event.KeyEvent e)
e
- 执行操作需要的参数。public void addTrackingListener(Tracking3DListener l)
Tracking3DEvent
)的监听器。
在三维场景窗口的跟踪图层中鼠标交互绘制几何对象时触发该三维场景窗口跟踪事件。
l
- 一个用于接收三维场景窗口的跟踪图层中鼠标交互绘制事件的监听器。public void removeTrackingListener(Tracking3DListener l)
Tracking3DEvent
)的监听器。
在三维场景窗口的跟踪图层中鼠标交互绘制几何对象时触发该三维场景窗口跟踪事件。
l
- 一个用于接收三维场景窗口的跟踪图层中鼠标交互绘制事件的监听器。public void addTrackedListener(Tracked3DListener l)
Tracked3DEvent
)的监听器。
在三维场景窗口的跟踪图层中鼠标交互绘制几何对象结束时触发该三维场景窗口跟踪事件。
l
- 一个用于接收三维场景窗口的跟踪图层中鼠标交互绘制结束事件的监听器。public void removeTrackedListener(Tracked3DListener l)
Tracked3DEvent
)的监听器。
在三维场景窗口的跟踪图层中鼠标交互绘制几何对象结束时触发该三维场景窗口跟踪事件。
l
- 一个用于接收三维场景窗口的跟踪图层中鼠标交互绘制结束事件的监听器。public void addObjectSelectedListener(ObjectSelectedListener l)
ObjectSelectedEvent
)的监听器。
l
- 一个用于接收对象被选中事件的监听器。public void removeObjectSelectedListener(ObjectSelectedListener l)
ObjectSelectedEvent
)的监听器。
l
- 一个用于接收对象被选中事件的监听器。public void addActionChangedListener(Action3DChangedEvent l)
Action3DChangedEvent
)的监听器。
l
- 一个用于三维场景控件操作状态改变事件的监听器。public void removeActionChangedListener(Action3DChangedEvent l)
Action3DChangedEvent
)的监听器。
l
- 一个用于三维场景控件操作状态改变事件的监听器。public void dispose()
public boolean isAlwaysUpdate()
public void setAlwaysUpdate(boolean value)
value
- 一个布尔值,返回 true 时,表示失去焦点时不停止更新,返回 false时,表示失去焦时停止更新数据。public boolean isDynamicSelection()
public void setDynamicSelection(boolean value)
value
- 指定是否动态高亮显示。public boolean isStatusBarShowAltitude()
public void setStatusBarShowAltitude(boolean value)
value
- 指定是否显示高度。public SnapMode3D getSnapMode()
public void setSnapMode(SnapMode3D value)
public boolean isAlwaysActive()
public void setAlwaysActive(boolean alwaysActive)
alwaysActive
-
|
|||||||||
上一个类 下一个类 | 框架 无框架 | ||||||||
摘要: 嵌套 | 字段 | 构造方法 | 方法 | 详细信息: 字段 | 构造方法 | 方法 |