public class CalibrationResult
extends java.lang.Object
校正点
,
校正类型
,
通过偏移量校正使用示例
//校正场景
if (arSceneLoader == null){
//若场景未加载
arView.setDeviceLocation(result.getDeviceLocation());
arView.setAzimuth(result.getDeltaAzimuth());
//do sth.(initArScene(this))
}else {
//若场景已加载,取出场景的节点,设置位置偏移量与旋转角度
arSceneLoader.getSceneElement().setPosition(offset);
arSceneLoader.getSceneElement().setRotationAngleNoRepeat(new Quaternion(new Vector3(0,1,0),deltaAzimuth));
}
限定符和类型 | 方法和说明 |
---|---|
static CalibrationResult |
calculate(AREffectView arView,
boolean isChangeScale,
CalibrationPoint pointA,
CalibrationPoint pointB)
通过两个校正的方式计算设备的地理位置
此种方法会计算校正前后的偏移量
|
static TransformCalibrationResult |
calculate(AREffectView arView,
boolean isChangeScale,
TransformationMode transformationMode,
CalibrationPoint... calibrationPoints)
通过配准的方式计算设备的地理位置
|
java.util.List<CalibrationPoint> |
getCalibrationPoints()
获取校正点集
|
float |
getDeltaAzimuth()
获取AR场景启动时的方位角
|
Location |
getDeviceLocation()
获取AR场景启动时的地理坐标
|
Point3D |
getOffset()
获取校正前相对于校正后的偏移量
|
float |
getScale() |
public static CalibrationResult calculate(AREffectView arView, boolean isChangeScale, CalibrationPoint pointA, CalibrationPoint pointB)
arView
- AR视图isChangeScale
- 是否允许改变场景尺度pointA
- 校正点ApointB
- 校正点BCalibrationResult
校正结果public static TransformCalibrationResult calculate(AREffectView arView, boolean isChangeScale, TransformationMode transformationMode, CalibrationPoint... calibrationPoints)
arView
- isChangeScale
- 是否允许改变场景尺度transformationMode
- calibrationPoints
- 校正点集TransformCalibrationResult
校正结果public Point3D getOffset()
this#calculate(AREffectView, boolean, CalibrationPoint, CalibrationPoint)
public Location getDeviceLocation()
public float getDeltaAzimuth()
public float getScale()
public java.util.List<CalibrationPoint> getCalibrationPoints()