Bootstrap

Cesium 轨迹回放

标题 Cesium 轨迹回放

                     viewer.clock.startTime = start.clone();
                     viewer.clock.stopTime = stop.clone();
                     viewer.clock.currentTime = start.clone();
                     viewer.clock.clockRange = 0; //Loop at the end
                     viewer.clock.multiplier = 40;
                     var property = new Cesium.SampledPositionProperty();
                      track(arr, start, property) {
                           function computeCirclularFlight() {
                                  for (var i = 0; i < arr.length; i++) {
                                  var time = Cesium.JulianDate.addSeconds(start, i * 1000, new Cesium.JulianDate());
                                  var position = Cesium.Cartesian3.fromDegrees(arr[i][0], arr[i][1], arr[i][2]);
                                 property.addSample(time, position);
                              }
                                    return property;
                             }

                    var position = computeCirclularFlight();
                    var entity =viewer.entities.add({
                        availability: new Cesium.TimeIntervalCollection([new Cesium.TimeInterval({
                        start: Cesium.JulianDate.addSeconds(start, 0, new Cesium
                            .JulianDate()),
                        stop: Cesium.JulianDate.addSeconds(start, arr.length * 1000, new Cesium
                            .JulianDate()),
                    })]),
                    position: position,
                    orientation: new Cesium.VelocityOrientationProperty(position),
                    billboard: {
                        image: image, // default: undefined
                        show: true, // default
                        eyeOffset: new Cesium.Cartesian3(0.0, 0.0, 0.0), // default
                        horizontalOrigin: Cesium.HorizontalOrigin.CENTER, // default
                        verticalOrigin: Cesium.VerticalOrigin.BOTTOM, // default: CENTER
                        scale: 1.0, // default: 1.0
                        color: Cesium.Color.LIME, // default: WHITE
                        alignedAxis: Cesium.Cartesian3.ZERO, // default
                        width: 25, // default: undefined
                        height: 25 // default: undefined
                    },
                    path: {
                        show: true,
                        // leadTime: 0,
                        // trailTime: arr.length * 1000,//可以
                        width: 3,
                        resolution: 1,
                        material: new Cesium.PolylineOutlineMaterialProperty({
                            color: Cesium.Color.fromAlpha(Cesium.Color.LIGHTSKYBLUE, 0.5),
                            outlineWidth: 1,
                            outlineColor: Cesium.Color.red
                        })
                    }
                });
                return entity;
            }
             self.trackEntity = self.track(poisitions, start, property)
             self.trackEntity.position.setInterpolationOptions({
                     interpolationDegree: 1,
                    interpolationAlgorithm: Cesium.LinearApproximation
                 });
            viewer.trackedEntity = self.trackEntity;
;