鼠标单击双击场景模型
需使用 MMSDT.mouseEvent 构建函数监听鼠标事件
配置 onDown 鼠标单击事件
配置 onDouble 鼠标双击事件
参数
MMSDT.mouseEvent( eventMouse, onMove, outMove, onDown, onDouble, moveColor, getPoint, outLineSW, goBack )
eventMouse: 数组,需要监听的模型子网格名称,包含字符
onMove: 数组,鼠标移入事件
outMove: 匿名函数,鼠标移出执行该函数
onDown:数组,鼠标单击事件
onDouble:数组,鼠标双击事件
moveColor:数组,IoT设备参数配置
getPoint:布尔值,是否开启获取坐标点
outLineSW:布尔值,鼠标移入IoT设备,对设备是否沟边显示
goBack:回调函数,单击IoT设备(或图标)返回该IoT设备信息
onDown属性
var onDown = [ [array, function, leftRight], ]
array:数组,鼠标单击有效的子网格名称
function:匿名函数,鼠标单击执行该函数,参数传入指向的子网格名称
leftRight:字符串,监听左键还是右键,“left”左键,“right”右键,为空默认左键
onDouble属性
var onDouble = [ [array, function, leftRight], ]
array:数组,鼠标单击有效的子网格名称
function:匿名函数,鼠标双击执行该函数,参数传入指向的子网格名称
leftRight:字符串,监听左键还是右键,“left”左键,“right”右键,为空默认左键
代码示例
//初始化载入需要切换的天空球
var skyList = [
[215,"#000735"],
[216,"#c1dbfe"],
]
var sky = new MMSDT.skyLoad( dirUrl,skyList );
//初始化材质系统
var techMaterials = new MMS3D.MeshBasicMaterial({
color: 0x00beff,
transparent:true,
opacity:0.05,
side: MMS3D.DoubleSide,
depthWrite: false,
});
MMSDT.setMaterials( techMaterials );
//数组,需要监听的模型子网格名称
var eventMouse = ["sm","cx1","cx2","cyy","tx","ds_","ds2"];
//数组,模型的移入事件
var onMove = [
[["sm","cx1","cx2","cyy","tx","ds_","ds2"], function(name){ MMSDT.superposition( [ name ], 0xffff00); document.body.title = "左键双击突显,右键单击恢复" } ],
];
//匿名函数,鼠标移出事件
var outMove = function(){
MMSDT.resSuperposition(["sm","cx1","cx2","cyy","tx","ds_","ds2"]);
document.body.title = "";
}
//数组,鼠标单击事件
var onDown = [
[ ["sm","cx1","cx2","cyy","tx","ds_","ds2"], function(name){ alert("左键单击无效,请用左键双击进入"); }, "left" ],
[ ["sm","cx1","cx2","cyy","tx","ds_","ds2"], function(name){ console.log("右键单击");MMSDT.resStyle(); sky.skySelect(1) }, "right" ],
];
//数组,鼠标双击事件
var onDouble = [
[ ["sm","cx1","cx2","cyy","tx","ds_","ds2"], function(name){ console.log("左键双击");MMSDT.objectStyle( [ name ], false); sky.skySelect(0) }, "left" ],
[ ["sm","cx1","cx2","cyy","tx","ds_","ds2"], function(name){ alert("右键双击无效,请用左键双击进入") }, "right" ],
]
var moveColor = [];
function goBack( dateJson ){
}
//构建函数监听鼠标事件
MMSDT.mouseEvent( eventMouse, onMove, outMove, onDown, onDouble, moveColor, false, false, goBack );
在线演示
Powered by mms3D