攻击弧线

MMSDT.attackArc()

       攻击弧线,用于表现点对点的弧形信息流向。

构造函数

      MMSDT.attackArc( parameters: object, position: array, callback: Function )

       parameters - json格式,参数设置。

       position - 二维数组,点对点的坐标点。

       callback - 完成单次信息流,回调参数为该条信息的坐标点。

属性

       .enabled( Boolean )

       是否显示,true显示,false隐藏。

       .remove()

       删除所有。

代码示例

var MMS3D_exceptionMesh = []; //需要材质拆分的网格 var MMS3D_instancingMesh = ["Sc46134_2","Sc46753_2","Sc46264_2"]; //合并实例化网格 //初始化场景 MMSDT.initScene( false, MMS3D_exceptionMesh, MMS3D_instancingMesh ); //设置第3人称鼠标控制器 controls3.maxPolarAngle = Math.PI*0.49; //向下,最大角度限制 controls3.maxDistance = 1000; //最远距离限制 controls3.screenSpacePanning = false; //右键平移是否上下移动 controls3.enableDamping = true; //是否开启惯性阻尼 controls3.dampingFactor = 0.1; //惯性阻尼系数 controls3.autoRotateSpeed = 1; //自动旋转速度 controls3.autoRotate = true; //是否开启自动旋转 //使用json文件让场景还原 MMSDT.onloadScene( "models/mms3D_jianyu4.json", function(progress){ if( progress == 'done' ){ //加载完成,播放动画 for( var i=0; i<actions[0].length; i++ ){ actions[0][i].play(); actions[0][i].timeScale = 1.5; } }else if( progress == 'ok' ){ //渲染完成 onloadDone(); }else{ //显示进度条数字 document.getElementById("loadNum").innerHTML = Math.round( progress )+'%'; } }); //场景加载完成 function onloadDone(){ MMSDT.getJson( "models/anima1660802763282.json", function(dataJson){ attackJson = dataJson.attackArc; //读取弧线坐标点 }); } var attackJson; var options = { url: "textures/arc.png", //String(贴图相对路径) speed: 2, //Number(流动速度,数字越大越快) width: 0.6, //Number(线条宽度) arc: 0.2, //Float(弯曲弧度) repeat: false, //Boolean(是否重复,true重复循环,false仅一次) }; //自定义对外函数接口------------------------------------------------------------------------ //目标发射 MMAPI.startAttack = function(num){ var list=0; var stops = setInterval(function(){ //循环发射光线 MMSDT.attackArc( options, [attackJson[list], attackJson[list+1]], function(arrayIndex){ console.log(arrayIndex); }); //发射完毕后停止 if( list < attackJson.length-2 ){ list+=2; }else{ clearInterval(stops); } },500) }

点击查看示例演示 →