ht.graph3d.MapInteractor(g3d)

new MapInteractor(g3d)

地图场景模式交互器
该交互模式下,具体行为如下:
鼠标操作:左键 drag 上下移动场景翻转;左键 drag 左右移动围绕中心旋转;滚轮进行走近和远离中心; 右键 pan 抓图,同默认模式不一样的是抓图时不改变相机视角(上下抓 图时相机的仰角);按住 shift 进行右键 pan 的时候同默认模式,此时相机视角可能发生变化;
触屏交互:单指 pan 抓图,抓图时不改变相机视角;双指绕着中心旋转则 rotate 场景;双指拿捏 pinch 方式的缩放;双指同上同下进行视角翻转;三指跟单指一样做 pan 行为, 不同的是抓图时改变相机视角;
属性设置:
panButton,默认 right,表示用哪个键来做 pan 手抓图,改成 left 则切换为左键抓图
keepHorizon,默认 true,抓图过程是否保持相机视角不变(注意,按 shift 会临时切换这个值为反)
minPhi,默认 0,相机最小仰角,默认 0 表示正上方
maxPhi,默认 5/12 Pi,相机最大仰角

Parameters:
Name Type Description
g3d ht.graph3d.Graph3dView

场景

Example
//示例:
var mapInteractor = new ht.graph3d.MapInteractor(g3d);
g3d.setInteractors([ mapInteractor ]);
// 修改最大仰角为 2/5 PI,可选项
mapInteractor.maxPhi = Math.PI * 2 / 5;
// 切换左右键习惯,用左键进行 pan 手抓图
mapInteractor.panButton = 'left';

Extends

Members

g3d :ht.graph3d.Graph3dView

Inherited From:

gv :ht.graph3d.Graph3dView

Inherited From:

Methods

addListeners() → {void}

添加事件监听
交互器遍历自身的 handle_xxx 函数,如果发现 xxx 匹配某种事件类型,会增加相应的事件监听
例如:
handle_keydown keydown 事件处理函数

Returns:
void
Inherited From:

fi(event) → {void}

派发交互器事件

Parameters:
Name Type Description
event any
Returns:
void
Inherited From:

getClass() → {function}

获取类声明(构造函数)

Returns:
function
Inherited From:

getClassName() → {string}

获取类全名

Returns:
string
Inherited From:

getSuperClass() → {function}

获取父类声明(构造函数),继承类时可以用来调用父类构造或函数

Returns:
function -

父类声明(构造函数)

Inherited From:

getView() → {HTMLDivElement}

获取拓扑组件的根层div

Returns:
HTMLDivElement
Inherited From:

removeListeners() → {void}

移除事件监听

Returns:
void
Inherited From:

setUp() → {void}

安装函数

Returns:
void
Inherited From:

startDragging(event) → {void}

开始拖拽

Parameters:
Name Type Description
event Event
Returns:
void
Inherited From:

tearDown() → {void}

卸载函数

Returns:
void
Inherited From: