Cesium.js 添加billboard廣告牌,點擊改變其文本和圖標


var monitorEntity = viewer.entities.add({
                name: "video",
                position: Cesium.Cartesian3.fromDegrees(109.44, 32.11,30.0),
                point: { //
                    pixelSize: 0,
                    HeightReference: 1000
                },
                label: { //文字標簽
                    text: "文字標簽",
                    font: '500 30px Helvetica',// 15pt monospace
                    scale: 0.5,
                    style: Cesium.LabelStyle.FILL,
                    fillColor: Cesium.Color.WHITE,
                    pixelOffset: new Cesium.Cartesian2(-8, -35),   //偏移量
                    showBackground: true,
                    backgroundColor: new Cesium.Color(0.5, 0.6, 1, 1.0)
                },
                billboard: { //圖標
                    image: '../images/marker01.png',
                    width: 50,
                    height: 50
                },
            });
          // 視角定位
            viewer.flyTo(monitorEntity, {
                duration: 2,
                offset: {
                    heading: Cesium.Math.toRadians(0.0),
                    pitch: Cesium.Math.toRadians(-30),
                    range: 720
                }
            });  
       //點擊廣告牌改變文本和圖標
        var handlerVideo = new Cesium.ScreenSpaceEventHandler(viewer.scene.canvas);
        handlerVideo.setInputAction(function (click) {
            var pick = viewer.scene.pick(click.position);
            if (pick && pick.id._name == "video") {
               monitorEntity._billboard._image._value = '../images/marker02.png';
               monitorEntity._label._text._value = "label";
            } else {
                return;
            }
        }, Cesium.ScreenSpaceEventType.LEFT_CLICK);

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM