Advertisement

cesium 锥体_Cesium 遥感卫星影像推送效果绘制

阅读量:

05959539c3161cfca0e4c809c023ba4c.png
3aa5c83cd605b27d0b2c3c0d5c0146c0.png

复制代码
    //添加卫星function addSatellite() {            satellite.curRouteLine = viewer.entities.add({                name: "satelliteline",                polyline: {                    positions: new Cesium.CallbackProperty(function (time, result) {return satellite.curRoutePositions;                    }, false),                    material: new Cesium.ColorMaterialProperty(Cesium.Color.YELLOW),                    width: 3,                },            });            satellite.entity = viewer.entities.add({                position: Cesium.Cartesian3.fromDegrees(-75.59777, 40.03883),                billboard: {                    image: "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAADJSURBVDhPnZHRDcMgEEMZjVEYpaNklIzSEfLfD4qNnXAJSFWfhO7w2Zc0Tf9QG2rXrEzSUeZLOGm47WoH95x3Hl3jEgilvDgsOQUTqsNl68ezEwn1vae6lceSEEYvvWNT/Rxc4CXQNGadho1NXoJ+9iaqc2xi2xbt23PJCDIB6TQjOC6Bho/sDy3fBQT8PrVhibU7yBFcEPaRxOoseTwbwByCOYf9VGp1BYI1BA+EeHhmfzKbBoJEQwn1yzUZtyspIQUha85MpkNIXB7GizqDEECsAAAAASUVORK5CYII=",                },                label: {                    text: 'Landsat8'                },                polyline: {                    positions: new Cesium.CallbackProperty(function (time, result) {//return satellite.entity.position.concat(satellite.curNadir);return (satellite.curNadir && satellite.entity) ? [satellite.entity.position._value, satellite.curNadir] : []                    }, false),                    material: new Cesium.ColorMaterialProperty(Cesium.Color.BLUE),                    width: 1                }            });var redCone = viewer.entities.add({//红色圆锥体                name: 'Red cone',                position: new Cesium.CallbackProperty(function (time, result) {if (satellite.entity) {                        let p = cesiumCoordUtil.cartesian3ToDegree2(satellite.entity.position._value);return Cesium.Cartesian3.fromDegrees(p.lon, p.lat, p.height / 6 * 5);                    } else {return Cesium.Cartesian3.fromDegrees(0, 0, 0);                    }                }, false),                cylinder: {                    length: new Cesium.CallbackProperty(function (time, result) {return (satellite.entity ? cesiumCoordUtil.cartesian3ToDegree2(satellite.entity.position._value).height : 0) / 3;                    }, false),                    topRadius: 0.0,                    bottomRadius: new Cesium.CallbackProperty(function (time, result) {return (satellite.entity ? cesiumCoordUtil.cartesian3ToDegree2(satellite.entity.position._value).height : 0) / 6;                    }, false),                    material: Cesium.Color.RED                }            });        }
    

3aa5c83cd605b27d0b2c3c0d5c0146c0.png
3aa5c83cd605b27d0b2c3c0d5c0146c0.png

复制代码
    //动态推送图像function addByTime() {            clear1();            Cesium.Resource.fetchJson({                url: './datas/testfilenew.json'            }).then(function (jsonData) {if (!jsonData) {return;                }                let level0 = jsonData.level3;for (let index = 0; index < level0.length; index++) {                    const tileData = level0[index];                    let bbox = tileData.bbox;                    let imagePath = tileData.imagePath;                    let id = tileData.id;                    console.log(id);                    console.log(imagePath);                    let xnum = id.split('_')[0];                    let ynum = id.split('_')[1];                    imagePath = './datas' + imagePath.replace('./', '/');// start(bbox, imagePath);                    (function (index) {                        setTimeout(function () {                            console.log(index, "interval");//addImage(bbox, './datas/aaa.jpg');                            addImage(bbox, imagePath);                            let curSillitePos = Cesium.Cartesian3.fromArray(satellite.routeLine[index]);                            satellite.curRoutePositions.push(curSillitePos);                            satellite.entity.position = curSillitePos;                            satellite.curNadir = Cesium.Cartesian3.fromDegrees(satellite.nadirs[index][0], satellite.nadirs[index][1], 0.0);                        }, index * 300);                    })(index);                }            }).otherwise(function (error) {            });            addSatellite();        }
    

全部评论 (0)

还没有任何评论哟~