Class: DragModel

Glodon.CIMCube.Widgets. DragModel

模型拖拽移动工具

new DragModel(map [, options])

模型拖拽移动工具
Parameters:
Name Type Argument Description
map Glodon.CIMCube CIMCube实例
options Object <optional>
配置参数
Properties
Name Type Argument Default Description
dragModelTipUI DragModelTipUI <optional>
自定义的tip ui实例
tips String <optional>
'单击鼠标左键选择需要操作的模型' 提示字符
showTips Boolean <optional>
true 是否显示提示字符
dragModelUI DragModelUI <optional>
自定义的模型实例
enableTranslationX Boolean <optional>
true X轴平移
enableTranslationY Boolean <optional>
true Y轴平移
enableTranslationZ Boolean <optional>
true Z轴平移
enableTranslationXY Boolean <optional>
true XOY面平移
enableTranslationYZ Boolean <optional>
true YOZ面平移
enableTranslationXZ Boolean <optional>
true XOZ面平移
enableRotationX Boolean <optional>
true X轴旋转
enableRotationY Boolean <optional>
true X轴旋转
enableRotationZ Boolean <optional>
true X轴旋转
enableScaleX Boolean <optional>
false X缩放
enableScaleY Boolean <optional>
false Y缩放
enableScaleZ Boolean <optional>
false Z缩放
targetScaleRange Array.<Number> <optional>
[0.1, Number.MAX_SAFE_INTEGER] 缩放范围
axisTranslationYColor String <optional>
'red' Y轴平移颜色
axisTranslationXColor String <optional>
'green' X轴平移颜色
axisTranslationZColor String <optional>
'blue' Z轴平移颜色
axisTranslationXYColor String <optional>
'red' XOY面平移颜色
axisTranslationYZColor String <optional>
'green' YOZ面平移颜色
axisTranslationXZColor String <optional>
'blue' XOZ面平移颜色
axisRotationXColor String <optional>
'red' X轴旋转颜色
axisRotationYColor String <optional>
'green' Y轴旋转颜色
axisRotationZColor String <optional>
'blue' Z轴旋转颜色
axisScaleXColor String <optional>
'red' X轴缩放颜色
axisScaleYColor String <optional>
'green' Y轴缩放颜色
axisScaleZColor String <optional>
'blue' Z轴缩放颜色
continueEdit Boolean <optional>
false 是否持续编辑,即点击下个对象将会让组件转移到其上;
UIScaling Number <optional>
1.0 缩放UI的系数,engine会忽略小于等于0的数字
noUI Boolean <optional>
false 是否不创建UI
enableLockDirectionTranslationYX Boolean <optional>
false YX平面内指定方向移动
enableLockDirectionTranslationZX Boolean <optional>
false ZX平面内指定方向移动
enableLockDirectionTranslationZY Boolean <optional>
false ZY平面内指定方向移动
lockDirectionTranslationColorYX String <optional>
'red' YX平面内指定方向移动颜色
lockDirectionTranslationColorZX String <optional>
'green' ZX平面内指定方向移动颜色
lockDirectionTranslationColorZY String <optional>
'blue' ZY平面内指定方向移动颜色
lockDirectionAngle Number <optional>
0 指定方向移动, 单位:度; y-x的0度为正北, z-x的0度为垂直地表向外, z-y的0度为垂直地表向上
enableRightButtonMove Boolean <optional>
false 是否启用右键移动
Example
任何被拾取(picked)的对象,不见得就是可拖动对象,他们可能是要被拖动对象的一部分。无论如何,拾取的对象需要实现如下接口,返回可被拖动的对象;如果拾取的就是可被拖动的,自然就是return this;
有时候拾取的对象可能是动态创建的Object,无既定义逻辑,这就需要该逻辑判断;
class PickedObject {
    getDragableTarget() {return Object;}/// 返回可移动对象;
}

Members


UI

获取组件UI。

Methods


activate()

开启拖动

clear()

清空场景,并不是销毁。

deactivate()

停止拖动

dispose()

销毁实例,彻底释放;

drawMoveHandle(target)

指定要拖动的对象,注意需要实现了必要接口的对象
Parameters:
Name Type Description
target Object 目标对象

rotateTarget(deltaValue)

按照所见的轴的方向旋转模型,(xyz序的内旋变换)
Parameters:
Name Type Description
deltaValue Array.<Number> 数组长度为3

translateTarget(deltaValue)

按照所见的轴的方向平移模型
Parameters:
Name Type Description
deltaValue Array.<Number> 数组长度为3