new FdTransformHelper()
Example
var viewer = Freedo.FdApp.createDefaultViewer('freedoContainer');
var tileset = viewer.scene.primitives.add(new Freedo.FreedoPModelset({
url : '../../sampleData/文化室2018z'
}));
tileset.readyPromise.then(function(tileset) {
viewer.camera.viewBoundingSphere(tileset.boundingSphere, new Freedo.HeadingPitchRange(0, -0.5, 0));
var th = new Freedo.FdMicroApp.FdTransformHelper(viewer);
th.setData([tileset]);
th.start('MOVE');
});
Methods
-
addPModel(pModel)
-
添加PModel对象
Parameters:
Name Type Description pModelPModel PModel对象
-
applyTransformToTileset(tileSet, TMoveX, TMoveY, TMoveZ, THeading, TPitch, TRoll, TScaleX, TScaleY, TScaleZ [, XCenter] [, YCenter] [, ZCenter])
-
根据参数进行模型变换
Parameters:
Name Type Argument Description tileSetObject 需要进行操作的模型
TMoveXNumber 从原点计算的经度偏移量,单位弧度
TMoveYNumber 从原点计算的纬度偏移量,单位弧度
TMoveZNumber 从原点计算的最终高程值,单位是米
THeadingNumber Heading,单位是角度
TPitchNumber Pitch,单位是角度
TRollNumber Roll,单位是角度
TScaleXNumber X方向上的缩放系数
TScaleYNumber X方向上的缩放系数
TScaleZNumber X方向上的缩放系数
XCenterNumber <optional>
指定操作点的经度,单位弧度
YCenterNumber <optional>
指定操作点的纬度,单位弧度
ZCenterNumber <optional>
指定操作点的高程,单位米
-
cancel()
-
退出模型编辑
-
dispose()
-
销毁所有资源
-
getData()
-
获取数据
Returns:
格式如下: [{ tileset: tileset对象, modelMatrix: 变换矩阵 }...]
- Type
- Object
-
getMatrixOfTileset(tileSet, TMoveX, TMoveY, TMoveZ, THeading, TPitch, TRoll, TScaleX, TScaleY, TScaleZ [, XCenter] [, YCenter] [, ZCenter])
-
根据参数得到变换矩阵
Parameters:
Name Type Argument Description tileSetObject 需要进行操作的模型
TMoveXNumber 从原点计算的经度偏移量,单位弧度
TMoveYNumber 从原点计算的纬度偏移量,单位弧度
TMoveZNumber 从原点计算的最终高程值,单位是米
THeadingNumber Heading,单位是角度
TPitchNumber Pitch,单位是角度
TRollNumber Roll,单位是角度
TScaleXNumber X方向上的缩放系数
TScaleYNumber X方向上的缩放系数
TScaleZNumber X方向上的缩放系数
XCenterNumber <optional>
指定操作点的经度,单位弧度,可选参数,如果不指定默认使用原点的经度
YCenterNumber <optional>
指定操作点的纬度,单位弧度,可选参数,如果不指定默认使用原点的纬度
ZCenterNumber <optional>
指定操作点的高程,单位米,可选参数,如果不指定默认使用原点的高程
-
hideAxis()
-
隐藏操作轴
-
on(listener [, scope])
-
注册事件捕捉
Parameters:
Name Type Argument Description listenerFdMicroApp.FdTransformHelper~FdTransformHelperCallback 当有事件触发时被执行的函数。
scopeObject <optional>
listener函数执行时的绑定的对象。
Returns:
返回一个函数,调用该函数可以取消监听。
- Type
- Freedo.Event~RemoveCallback
-
removePModel(pModel)
-
删除PModel对象
Parameters:
Name Type Description pModelPModel PModel对象
-
reset()
-
重置
-
resetTransform()
-
重置场景的变换矩阵
-
saveTransform()
-
保存变换矩阵
-
setArg(argName, argValue)
-
设置参数值
Parameters:
Name Type Description argNameString 参数名
argValueString 参数值
-
setData(aPModel)
-
设置PModel数组
Parameters:
Name Type Description aPModelArray PModelSet的数组
-
setModel(aPModel)
-
设置PModel数组
Parameters:
Name Type Description aPModelArray PModelSet数组
-
start(type)
-
激活模型编辑
Parameters:
Name Type Description typeString 编辑类型,MOVE,SCALE, ROTATE
Type Definitions
-
FdTransformHelperCallback(eventType, eventArg)
-
Parameters:
Name Type Description eventTypeString 事件类型有:Start,Cancel,InitTransform,Transform,Transforming,Transformed,TransformedMatrix,resetTransform,DataChanged
eventArgObject Start/Cancel无返回值,其他事件返回值是包含各个参数数据的对象