com.supermap.realspace
类 Camera
- java.lang.Object
-
- com.supermap.realspace.Camera
-
public class Camera extends Object
相机类。SuperMap iObjects Java 三维地理信息系统中,通过使用相机对象(
Camera对象)来控制三维场景中所显示的视图。相机对象实际是三维场景中的一个虚拟镜头,通过指定这个虚拟镜头的位置和方向来指定视图。默认状态下,相机的位置在经度和纬度都为0的位置,即在赤道和本初子午线相交的位置处,而相机的
getHeading()的值为0,getTilt()的值为0,要改变相机的位置和方向,从而获取不同的视图,只需改变相机的设置即可,如通过setHeading()方法,即将相机绕着 Z 轴旋转一定角度;通过setTilt()方法,即将相机绕着 X 轴旋转一定角度。有关相机的详细内容,请参见三维技术文档。

- 示范代码:
- 以下代码示范了如何设置三维场景中的相机对象
public void cameraExample() { //构造一个相机对象,并对其进行设置 Camera camera = new Camera(116, 40, 3500); camera.setAltitudeMode(AltitudeMode.CLAMP_TO_GROUND); camera.setHeading(120); camera.setTilt(45); //输出相机对象的描述信息 String cameraDescription = camera.toString(); System.out.println("该相机对象的描述信息为:" + cameraDescription); //System.out.println("The description of the Camera object is that " + cameraDescription); //将三维场景飞行到指定的相机对象处 SceneControl sceneControl = new SceneControl(); Scene sceneObject = sceneControl.getScene(); sceneObject.fly(camera); sceneObject.refresh(); //释放占用的资源 sceneControl.dispose(); }
-
-
构造器概要
构造器 构造器和说明 Camera()构造一个新的 Camera 对象。Camera(Camera camera)根据给定的 Camera 对象构造一个与其完全相同的新对象。Camera(double longitude, double latitude, double altitude)根据指定的参数来构造一个 Camera 的新对象。Camera(double longitude, double latitude, double altitude, AltitudeMode altitudeMode, double heading, double tilt)根据指定的参数来构造一个 Camera 的新对象。
-
方法概要
所有方法 静态方法 实例方法 具体方法 限定符和类型 方法和说明 booleancameraEquals(Camera camera)Cameraclone()返回当前 Camera 对象的一个拷贝。doublegetAltitude()返回相机高度,单位为米。AltitudeModegetAltitudeMode()返回高度模式。static CameragetEMPTY()返回空的相机对象。doublegetHeading()返回相机的方位角(上方向,即和北方的夹角),方位角的范围是0-360度。doublegetLatitude()返回相机的纬度,单位为度。doublegetLongitude()返回相机的经度,单位为度。doublegetTilt()返回相机的仰(俯)角(绕 X 轴的角度)。booleanisEmpty()返回该相机对象是否为空。voidsetAltitude(double value)设置相机高度,单位为米。voidsetAltitudeMode(AltitudeMode value)设置高度模式。voidsetHeading(double value)设置相机的方位角(上方向,即和北方的夹角),方位角的范围是0-360度。voidsetLatitude(double value)设置相机的纬度,单位为度。voidsetLongitude(double value)设置相机的经度,单位为度。voidsetTilt(double value)设置相机的仰(俯)角(绕 X 轴的角度)。StringtoString()返回一个字符串,用来描述相机类对象,其格式为:{Altitude=,Heading=,Latitude=,Longitude=,Roll=,Tilt=,AltitudeMode=}。
-
-
-
构造器详细资料
-
Camera
public Camera()
构造一个新的 Camera 对象。
-
Camera
public Camera(Camera camera)
根据给定的 Camera 对象构造一个与其完全相同的新对象。- 参数:
camera- 给定的 Camera 对象。
-
Camera
public Camera(double longitude, double latitude, double altitude)根据指定的参数来构造一个 Camera 的新对象。- 参数:
longitude- 相机的经度,单位为度。latitude- 相机的纬度,单位为度。altitude- 相机高度,单位为米。
-
Camera
public Camera(double longitude, double latitude, double altitude, AltitudeMode altitudeMode, double heading, double tilt)根据指定的参数来构造一个 Camera 的新对象。- 参数:
longitude- 相机的经度,单位为度。latitude- 相机的纬度,单位为度。altitude- 相机高度,单位为米。altitudeMode- 高度模式。heading- 相机的方位角,单位为度。tilt- 倾斜角,单位为度。
-
-
方法详细资料
-
getEMPTY
public static Camera getEMPTY()
返回空的相机对象。一个空的相机对象的描述字符串为:{Altitude=0.0,Heading=0.0,Latitude=0.0,Longitude=0.0,Tilt=0.0,AltitudeMode=RELATIVE_TO_GROUND}。- 返回:
- 空的相机对象。
-
isEmpty
public boolean isEmpty()
返回该相机对象是否为空。- 返回:
- 相机对象为空返回 true;否则返回 false。
- 默认值:
- 默认值为 false。
-
getAltitude
public double getAltitude()
返回相机高度,单位为米。- 返回:
- 相机高度,单位为米。
- 默认值:
- 默认值为 0,单位为米。
-
setAltitude
public void setAltitude(double value)
设置相机高度,单位为米。- 参数:
value- 相机高度。单位为米。
-
getHeading
public double getHeading()
返回相机的方位角(上方向,即和北方的夹角),方位角的范围是0-360度。方位角:指北针的方向。在三维分析和空间分析中,光源照射一个表面的方向称为方位角。
- 返回:
- 相机的方位角。单位为度。
- 默认值:
- 默认值为 0,单位为度。
-
setHeading
public void setHeading(double value)
设置相机的方位角(上方向,即和北方的夹角),方位角的范围是0-360度。方位角:指北针的方向。在三维分析和空间分析中,光源照射一个表面的方向称为方位角。
- 参数:
value- 相机的方位角。单位为度。
-
getLatitude
public double getLatitude()
返回相机的纬度,单位为度。- 返回:
- 相机的纬度。单位为度。
- 默认值:
- 默认值为 0,单位为度。
-
setLatitude
public void setLatitude(double value)
设置相机的纬度,单位为度。- 参数:
value- 相机的纬度,单位为度。
-
getLongitude
public double getLongitude()
返回相机的经度,单位为度。- 返回:
- 相机的经度。单位为度。
- 默认值:
- 默认值为 0,单位为度。
-
setLongitude
public void setLongitude(double value)
设置相机的经度,单位为度。- 参数:
value- 相机的经度。单位为度。
-
getTilt
public double getTilt()
返回相机的仰(俯)角(绕 X 轴的角度)。俯角的范围0度-90度。- 返回:
- 相机的仰(俯)角。单位为度。
- 默认值:
- 默认值为0,单位为度。
-
setTilt
public void setTilt(double value)
设置相机的仰(俯)角(绕 X 轴的角度)。俯角的范围0度-90度。- 参数:
value- 相机的仰(俯)角。单位为度。
-
getAltitudeMode
public AltitudeMode getAltitudeMode()
返回高度模式。高度模式类型分为距地固定高度模式(CLAMP_TO_GROUND)、距地相对高度模式(RELATIVE_TO_GROUND)和绝对高度模式(ABSOLUTE)。有关详情,请参见
AltitudeMode枚举类。- 返回:
- 高度模式。
- 默认值:
- 默认值为CLAMP_TO_GROUND
-
setAltitudeMode
public void setAltitudeMode(AltitudeMode value)
设置高度模式。高度模式类型分为距地固定高度模式(CLAMP_TO_GROUND)、距地相对高度模式(RELATIVE_TO_GROUND)和绝对高度模式(ABSOLUTE)。有关详情,请参见
AltitudeMode枚举类。- 参数:
value- 高度模式。
-
toString
public String toString()
返回一个字符串,用来描述相机类对象,其格式为:{Altitude=,Heading=,Latitude=,Longitude=,Roll=,Tilt=,AltitudeMode=}。
-
cameraEquals
public boolean cameraEquals(Camera camera)
-
-
Copyright © 2021–2025 SuperMap. All rights reserved.