You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
72 lines
3.1 KiB
72 lines
3.1 KiB
10 months ago
|
//增加气泡窗口展示信息
|
||
|
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;
|
||
|
}
|
||
|
});
|
||
|
}
|