//增加气泡窗口展示信息 var addBubble = function (){ $('#trackPopUp').show(); $(".cesium-selection-wrapper").show(); $('#trackPopUpLink').empty(); $('#trackPopUpLink').append(obj.content); if(removeHandler1 != undefined)removeHandler1.call(); function positionPopUp (c) { var x = c.x - ($('#trackPopUpContent').width()) / 2; var y = c.y - ($('#trackPopUpContent').height()); $('#trackPopUpContent').css('transform', 'translate3d(' + x + 'px, ' + y + 'px, 0)'); } var c = new newCesium.Cartesian2(obj.position.x, obj.position.y); positionPopUp(c); removeHandler1 = viewer.scene.postRender.addEventListener(function () { var changedC = newCesium.SceneTransforms.wgs84ToWindowCoordinates(viewer.scene,obj.position); if ((c.x !== changedC.x) || (c.y !== changedC.y)) { positionPopUp(changedC); c = changedC; } }); $('.leaflet-popup-close-button').click(function() { $('#trackPopUp').hide(); $('#trackPopUpLink').empty(); $(".cesium-selection-wrapper").hide(); removeHandler1.call(); $('#trackWavaUp').hide(); return false; }); } //增加波纹动画效果 var addWave = function (){ $(".wave.ripple.danger").css("color","#29579b"); $(".wave.ripple.danger").children(".circle").css("border-color","#29579b"); $(".wave.ripple.warning").css("color","#29579b"); $(".wave.ripple.warning").children(".circle").css("border-color","#29579b"); $('#trackWavaUp').show(); if(removeHandler2 != undefined)removeHandler2.call(); function positionPopUp(c) { var x = c.x - ($('#trackWavaUp').width()) / 2; var y = c.y - ($('#trackWavaUp').height()); $('#trackWavaUp').css('transform', 'translate3d(' + x + 'px, ' + y + 'px, 0)'); } var c = new _Cesium.Cartesian2(obj.position.x, obj.position.y); positionPopUp(c); removeHandler2 = viewer.scene.postRender.addEventListener(function () { var changedC; if(obj.type == 0){ changedC = _Cesium.SceneTransforms.wgs84ToWindowCoordinates(viewer.scene,obj.position); }else if(obj.type == 1){ var id = _Cesium.defaultValue(obj.pickedFeature.id, obj.pickedFeature.primitive.id); if(obj.pickedFeature.id._polyline!=null){ var pos={}; pos.x=(id._polyline._positions._value["0"].x+id._polyline._positions._value[1].x)/2; pos.y=(id._polyline._positions._value["0"].y+id._polyline._positions._value[1].y)/2; pos.z=(id._polyline._positions._value["0"].z+id._polyline._positions._value[1].z)/2; changedC = _Cesium.SceneTransforms.wgs84ToWindowCoordinates(viewer.scene,pos); }else{ changedC = _Cesium.SceneTransforms.wgs84ToWindowCoordinates(viewer.scene, id._position._value); } } if(changedC == undefined){ return; } if ((c.x !== changedC.x) || (c.y !== changedC.y)) { positionPopUp(changedC); c = changedC; } }); }