无关风月
2025-02-14 8db5d3eafb1cc5352b1bdf2c281c54c7fa80db93
ManagementOKTravel/guns-admin/src/main/webapp/static/modular/system/tOrderTaxi/tOrderTaxi_info.js
@@ -125,156 +125,156 @@
    ajax.start();
}
var map = new BMapGL.Map('allmap', {
    style: 'grayed-out',
    displayOptions: {
        indoor: false,
        poiText: false,
        poiIcon: false,
        building: false,
    }
});
var point = new BMapGL.Point(demo_data[0][0], demo_data[0][1]);
map.centerAndZoom(point, 18);
map.enableScrollWheelZoom(true);
map.setTilt(35);
var track = new Track.View(map, {
    lineLayerOptions: {
        style: {
            strokeWeight: 8,
            strokeLineJoin: 'round',
            strokeLineCap: 'round'
        },
    }
});
var trackData = [];
var colorOffset = [];
function orderTrack(data) {
    for(var item in data){
        var point = new BMapGL.Point(data[item].longitude, data[item].latitude);
        var trackPoint = new Track.TrackPoint(point);
        trackData.push(trackPoint);
        // 不同速度区间对应颜色
        var choose = [0.9, 0.5, 0.1];
        var color = choose[Math.floor(Math.random() * choose.length)];
        colorOffset.push(color);
    }
}
var startMarker = new BMapGL.Marker(trackData[0].getPoint(), {
    icon: new BMapGL.Icon('https://mapopen-pub-jsapi.bj.bcebos.com/jsapiGlgeo/img/start.png', new BMapGL.Size(25, 40)),
    offset: new BMapGL.Size(0, -16),
});
map.addOverlay(startMarker);
var endMarker = new BMapGL.Marker(trackData[trackData.length-1].getPoint(), {
    icon: new BMapGL.Icon('https://mapopen-pub-jsapi.bj.bcebos.com/jsapiGlgeo/img/end.png', new BMapGL.Size(25, 40)),
    offset: new BMapGL.Size(0, -16),
});
map.addOverlay(endMarker);
var duration = 60000;
var step = duration / trackData.length;
var trackRoad = new Track.LiveTrack({
    // visible: false,
    duration: step,
    linearTexture: [[0, '#f45e0c'], [0.5, '#f6cd0e'], [1, '#2ad61d']],
    guideStyle: {
        style:{
            traceDisappear: false,
            traceStart: true,
            sequence: true,
            marginLength: 32,
            arrowColor: '#fff',
            strokeColor: 'rgba(27, 142, 236, 1)',
            strokeTextureUrl: 'https://mapopen-pub-jsapi.bj.bcebos.com/jsapiGlgeo/img/down.png',
            strokeTextureWidth: 64,
            strokeTextureHeight: 32,
        }
    },
});
trackRoad.setGuidTrackPath(trackData);
trackRoad.on(Track.LineCodes.GUIDE_STATUS, (e) => {
    if (e.status === Track.GuidCodes.ADD_TO_MAP) {
        var guidTrack = trackRoad.getGuidTrack();
        guidTrack.on(Track.LineCodes.STATUS, (status) => {
            switch (status) {
                case Track.StatusCodes.FINISH:
                    var box = trackRoad.getBBox();
                    if(box){
                        var bounds = [new BMapGL.Point(box[0], box[1]), new BMapGL.Point(box[2], box[3])];
                        map.setViewport(bounds);
                    }
                    break;
                default:
                    break;
            }
        });
    }
});
var movePoint = new Track.ModelPoint({ point: trackData[0].getPoint(), style:{
        url: 'https://mapopen-pub-jsapi.bj.bcebos.com/jsapiGlgeo/img/bus.glb',
        scale: 9,
        level: 18,
        rotationX: 90,
        rotationY: 90,
        rotationZ: 0
    } });
movePoint.setRotation(trackRoad.getGuidTrack().getStepInfoByIndex(0).angle);
trackRoad.setMovePoint(movePoint);
track.addTrackLine(trackRoad);
track.focusTrack(trackRoad);
var ani;
var start = null;
var index = 0;
var finishIndex = 0;
function startAnimation(timestamp) {
    if (!start) start = timestamp;
    var progress = timestamp - start;
    var next = step * (index - finishIndex);
    if(progress > next){
        if(index<trackData.length){
            movePoint.moveTo(trackData[index]);
            var obj = trackRoad.getGuidTrack().getStepInfoByIndex(index);
            trackRoad.setGradientColors(colorOffset.slice(0,index+1));
            index++;
        }else{
            pauseAnimation();
        }
    }
    ani = requestAnimationFrame(startAnimation);
}
function stopAnimation() {
    pauseAnimation();
    index = 0;
    finishIndex = index;
    start = null;
    trackRoad.clearTrackPoint();
    movePoint.setPoint(trackData[0].getPoint());
    movePoint.setRotation(trackRoad.getGuidTrack().getStepInfoByIndex(0).angle);
}
function pauseAnimation() {
    cancelAnimationFrame(ani);
    finishIndex = index;
    start = null;
}
function resumeAnimation() {
    startAnimation();
}
// var map = new BMapGL.Map('allmap', {
//     style: 'grayed-out',
//     displayOptions: {
//         indoor: false,
//         poiText: false,
//         poiIcon: false,
//         building: false,
//     }
// });
// var point = new BMapGL.Point(demo_data[0][0], demo_data[0][1]);
//
// map.centerAndZoom(point, 18);
// map.enableScrollWheelZoom(true);
// map.setTilt(35);
//
// var track = new Track.View(map, {
//     lineLayerOptions: {
//         style: {
//             strokeWeight: 8,
//             strokeLineJoin: 'round',
//             strokeLineCap: 'round'
//         },
//     }
// });
//
// var trackData = [];
// var colorOffset = [];
//
// function orderTrack(data) {
//     for(var item in data){
//         var point = new BMapGL.Point(data[item].longitude, data[item].latitude);
//         var trackPoint = new Track.TrackPoint(point);
//         trackData.push(trackPoint);
//         // 不同速度区间对应颜色
//         var choose = [0.9, 0.5, 0.1];
//         var color = choose[Math.floor(Math.random() * choose.length)];
//         colorOffset.push(color);
//     }
// }
// var startMarker = new BMapGL.Marker(trackData[0].getPoint(), {
//     icon: new BMapGL.Icon('https://mapopen-pub-jsapi.bj.bcebos.com/jsapiGlgeo/img/start.png', new BMapGL.Size(25, 40)),
//     offset: new BMapGL.Size(0, -16),
// });
// map.addOverlay(startMarker);
// var endMarker = new BMapGL.Marker(trackData[trackData.length-1].getPoint(), {
//     icon: new BMapGL.Icon('https://mapopen-pub-jsapi.bj.bcebos.com/jsapiGlgeo/img/end.png', new BMapGL.Size(25, 40)),
//     offset: new BMapGL.Size(0, -16),
//
// });
// map.addOverlay(endMarker);
// var duration = 60000;
// var step = duration / trackData.length;
//
// var trackRoad = new Track.LiveTrack({
//     // visible: false,
//     duration: step,
//     linearTexture: [[0, '#f45e0c'], [0.5, '#f6cd0e'], [1, '#2ad61d']],
//     guideStyle: {
//         style:{
//             traceDisappear: false,
//             traceStart: true,
//             sequence: true,
//             marginLength: 32,
//             arrowColor: '#fff',
//             strokeColor: 'rgba(27, 142, 236, 1)',
//             strokeTextureUrl: 'https://mapopen-pub-jsapi.bj.bcebos.com/jsapiGlgeo/img/down.png',
//             strokeTextureWidth: 64,
//             strokeTextureHeight: 32,
//         }
//     },
// });
//
// trackRoad.setGuidTrackPath(trackData);
// trackRoad.on(Track.LineCodes.GUIDE_STATUS, (e) => {
//     if (e.status === Track.GuidCodes.ADD_TO_MAP) {
//         var guidTrack = trackRoad.getGuidTrack();
//         guidTrack.on(Track.LineCodes.STATUS, (status) => {
//             switch (status) {
//                 case Track.StatusCodes.FINISH:
//                     var box = trackRoad.getBBox();
//                     if(box){
//                         var bounds = [new BMapGL.Point(box[0], box[1]), new BMapGL.Point(box[2], box[3])];
//                         map.setViewport(bounds);
//                     }
//                     break;
//                 default:
//                     break;
//             }
//         });
//     }
// });
// var movePoint = new Track.ModelPoint({ point: trackData[0].getPoint(), style:{
//         url: 'https://mapopen-pub-jsapi.bj.bcebos.com/jsapiGlgeo/img/bus.glb',
//         scale: 9,
//         level: 18,
//         rotationX: 90,
//         rotationY: 90,
//         rotationZ: 0
//     } });
// movePoint.setRotation(trackRoad.getGuidTrack().getStepInfoByIndex(0).angle);
//
// trackRoad.setMovePoint(movePoint);
//
// track.addTrackLine(trackRoad);
// track.focusTrack(trackRoad);
//
// var ani;
// var start = null;
// var index = 0;
// var finishIndex = 0;
//
//
// function startAnimation(timestamp) {
//     if (!start) start = timestamp;
//     var progress = timestamp - start;
//     var next = step * (index - finishIndex);
//
//     if(progress > next){
//         if(index<trackData.length){
//             movePoint.moveTo(trackData[index]);
//             var obj = trackRoad.getGuidTrack().getStepInfoByIndex(index);
//             trackRoad.setGradientColors(colorOffset.slice(0,index+1));
//             index++;
//         }else{
//             pauseAnimation();
//         }
//
//     }
//     ani = requestAnimationFrame(startAnimation);
// }
//
//
// function stopAnimation() {
//     pauseAnimation();
//     index = 0;
//     finishIndex = index;
//
//     start = null;
//     trackRoad.clearTrackPoint();
//     movePoint.setPoint(trackData[0].getPoint());
//     movePoint.setRotation(trackRoad.getGuidTrack().getStepInfoByIndex(0).angle);
// }
// function pauseAnimation() {
//     cancelAnimationFrame(ani);
//     finishIndex = index;
//     start = null;
// }
// function resumeAnimation() {
//     startAnimation();
// }
$(function() {
    $('#orderType').on('change', function () {
@@ -284,8 +284,6 @@
            $('.travelTime').show();
        }
    })
    console.log("id")
    console.log($("#id").val())
    if(typeof $("#id").val() != "undefined"){
        getTrajectory();
    }
@@ -312,5 +310,16 @@
        }
    });
}
function orderTrack(data) {
    // for (var item of data) {
    //     var point = new BMapGL.Point(item.lon, item.lat);
    //     var trackPoint = new Track.TrackPoint(point);
    //     trackData.push(trackPoint);
    //     // 不同速度区间对应颜色
    //     var choose = [0.9, 0.5, 0.1];
    //     var color = choose[Math.floor(Math.random() * choose.length)];
    //     colorOffset.push(color);
    // }
}