9203485de3e10610aea83d38f960945fd9f5b3b3..770c4dc1df2c5e130c4b57ef9302da45dfcc0783
2020-11-13 zengh
轨迹线修改名称
770c4d diff | tree
2020-11-13 zengh
图片动画
0b45c0 diff | tree
2020-11-13 zengh
剖面分析集成
824dec diff | tree
5 files modified
9 files added
602 ■■■■■ changed files
widgets/MapSection/SectionChart.js 4 ●●●● patch | view | raw | blame | history
widgets/MapSection/Widget.js 209 ●●●●● patch | view | raw | blame | history
widgets/MapSection/Widget1.js 276 ●●●●● patch | view | raw | blame | history
widgets/MapSection/css/style.css 9 ●●●●● patch | view | raw | blame | history
widgets/PathShow/Widget.js 1 ●●●● patch | view | raw | blame | history
widgets/PathShow/nls/zh-cn/strings.js 2 ●●● patch | view | raw | blame | history
widgets/PictureAnimation/Widget.html 2 ●●●●● patch | view | raw | blame | history
widgets/PictureAnimation/Widget.js 64 ●●●●● patch | view | raw | blame | history
widgets/PictureAnimation/css/style.css patch | view | raw | blame | history
widgets/PictureAnimation/images/icon.png patch | view | raw | blame | history
widgets/PictureAnimation/manifest.json 18 ●●●●● patch | view | raw | blame | history
widgets/PictureAnimation/nls/es/strings.js 5 ●●●●● patch | view | raw | blame | history
widgets/PictureAnimation/nls/strings.js 7 ●●●●● patch | view | raw | blame | history
widgets/PictureAnimation/nls/zh-cn/strings.js 5 ●●●●● patch | view | raw | blame | history
widgets/MapSection/SectionChart.js
@@ -15,6 +15,7 @@
    ],
    function (declare, lang, html, _WidgetBase, _TemplatedMixin,
              on, mouse, query, xhr, topic, JSON,domConstruct,echarts) {
        return declare([_WidgetBase, _TemplatedMixin], {
            templateString: '<div style="width:100%;height:100%;"><div   style="width:100%;height:100%;" >' +
@@ -80,10 +81,9 @@
                
            },
            isResize:true,
            postCreate: function () {
            postCreate: function () {
                this.inherited(arguments);
                this.query();
                this.step = 0;
                var lg = this.GetDistance(this.oList[0].lttd,this.oList[0].lgtd,this.oList[99].lttd,this.oList[99].lgtd);
                this.step = lg/99;
widgets/MapSection/Widget.js
@@ -29,229 +29,28 @@
){
    return declare("MapSection", [BaseWidget],{
        baseClass:"demo-widgets-MapSection",
        postCreate:function(){
            this.inherited(arguments);
            this._tooltip = this.createTooltip(this.map.cesiumWidget.container);
        },
        createTooltip: function (frameDiv) {
            var tooltip = function(frameDiv) {
                var div = document.createElement('DIV');
                div.className = "twipsy right";
                var arrow = document.createElement('DIV');
                arrow.className = "twipsy-arrow";
                div.appendChild(arrow);
                var title = document.createElement('DIV');
                title.className = "twipsy-inner";
                div.appendChild(title);
                this._div = div;
                this._title = title;
                // add to frame div and display coordinates
                frameDiv.appendChild(div);
            }
            tooltip.prototype.setVisible = function(visible) {
                this._div.style.display = visible ? 'block' : 'none';
            }
            tooltip.prototype.showAt = function(position, message) {
                if(position && message) {
                    this.setVisible(true);
                    this._title.innerHTML = message;
                    this._div.style.left = position.x + 10 + "px";
                    this._div.style.top = (position.y - this._div.clientHeight / 2) + "px";
                }
            }
            return new tooltip(frameDiv);
        },
        destroy:function(){
            this.inherited(arguments);
        },
        // click:function(){
        //     this.active = !this.active;
        //     if(this.active){
        //         this._tooltip.setVisible(true);
        //     }else{
        //         this._tooltip.setVisible(false);
        //     }
        //     this.clearEntity();
        // },
        onOpen: function () {
            this.map.scene.globe.baseColor = Cesium.Color.BLACK;
            $($('div.cesium-viewer').find('.cesium-baseLayerPicker-choices')[0]).children('div:eq(3)').trigger('click');
            this.active = true;
            this.clearEntity();
            this._tooltip.setVisible(true);
        },
        onClose: function () {
            this.active = false;
            this.clearEntity();
            this._tooltip.setVisible(false); },
        active:false,
            this._tooltip.setVisible(false);
            },
        startup:function(){
            this.inherited(arguments);
            var pm = new DC.mapSection(window.dcViewer,Popup,SectionChart);
            var handler = new Cesium.ScreenSpaceEventHandler(window.viewer.scene.canvas);
            handler.setInputAction(
                lang.hitch(this,function (movement) {
                    if(!this.active)return;
                    var ellipsoid = window.viewer.scene.globe.ellipsoid;
                    var ellipsoid = Cesium.Ellipsoid.WGS84;
//                    var cartesian = window.viewer.scene.camera.pickEllipsoid(movement.position, ellipsoid);//两种的经纬度获取的不一样
                    var pickRay = window.viewer.scene.camera.getPickRay(movement.position);
                    var cartesian = window.viewer.scene.globe.pick(pickRay, window.viewer.scene);
                    if (cartesian) {
                        var cartographic = ellipsoid.cartesianToCartographic(cartesian);
                        var longitudeString = Cesium.Math.toDegrees(cartographic.longitude);//.toFixed(2);
                        var latitudeString = Cesium.Math.toDegrees(cartographic.latitude);//.toFixed(2);
                        this.points.push({"lgtd":longitudeString,"lttd":latitudeString});
                        if(this.points.length==2){
                            //计算
                            var points = this.createHundryPoints(this.points);
                            //弹出
                            this.getData(points);
                            this.points = [];
                            this.active = false;
                            this._tooltip.setVisible(false);
                            this.bill2 = window.viewer.entities.add({
                                position : Cesium.Cartesian3.fromDegrees(longitudeString, latitudeString ),
                                billboard : {
                                    image : "images/marker_green.png",
                                    pixelOffset: new Cesium.Cartesian2(0, 0),
                                    heightReference: Cesium.HeightReference.CLAMP_TO_GROUND,
                                    disableDepthTestDistance: Number.POSITIVE_INFINITY
                                }
                            });
                            return;
                        }
                        this.bill1 = window.viewer.entities.add({
                            position : Cesium.Cartesian3.fromDegrees(longitudeString, latitudeString ),
                            billboard : {
                                image : "images/marker_green.png",
                                pixelOffset: new Cesium.Cartesian2(0, 0),
                                heightReference: Cesium.HeightReference.CLAMP_TO_GROUND,
                                disableDepthTestDistance: Number.POSITIVE_INFINITY
                            }
                        });
                    }
                }), Cesium.ScreenSpaceEventType.LEFT_CLICK);
            handler.setInputAction(
                lang.hitch(this,function (movement) {
                    if(!this.active)return;
                    if(this.points.length==0){
                        this._tooltip.showAt(movement.endPosition, "请获取起点");
                        return;
                    }
                    this._tooltip.showAt(movement.endPosition, "点击结束");
                }), Cesium.ScreenSpaceEventType.MOUSE_MOVE);
        },
        clearEntity:function(){
        clearEntity: function () {
            window.viewer.entities.remove(this.bill1);
            window.viewer.entities.remove(this.bill2);
            window.viewer.entities.remove(this.line);
        },
        createHundryPoints:function(list){
            var lgtd1 = list[0].lgtd;
            var lgtd100 = list[1].lgtd;
            var lgtdStep = (lgtd100-lgtd1)/1000;
            var lttd1 = list[0].lttd;
            var lttd100 = list[1].lttd;
            var lttdStep = (lttd100-lttd1)/1000;
            var ary = [];
            for(var i=0;i<1000;i++){
                var lgtd = lgtd1 +(lgtdStep*i);
                var lttd = lttd1 +(lttdStep*i);
                ary.push({"id":i,"lgtd":lgtd,"lttd":lttd});
            }
            return ary;
        },
        points:[],
        getData:function(ary){
            var mappints = [];
            for(var j=0;j<ary.length;j++){
                var pt = ary[j];
                mappints.push({lgtd:pt.lgtd,lttd:pt.lttd,height:0});
            }
            //获取高程去
            this.makeChange(mappints).then(lang.hitch(this,function(list){
                var ptsAry = [];
                var numbers_lgtd=[];
                var numbers_lttd=[];
                for(var j=0;j<list.length;j++){
                    var pt = list[j];
                    ptsAry.push(Number(pt.lgtd));
                    ptsAry.push(Number(pt.lttd));
                    ptsAry.push(Number(pt.height));
                    numbers_lgtd.push(Number(pt.lgtd));
                    numbers_lttd.push(Number(pt.lttd));
                }
                this.line = window.viewer.entities.add({
                    polyline : {
                        positions : Cesium.Cartesian3.fromDegreesArrayHeights(ptsAry),
                        width : 3,
                        material : new Cesium.PolylineOutlineMaterialProperty({
                            color : Cesium.Color.ORANGE,
                            outlineWidth : 1,
                            outlineColor : Cesium.Color.BLACK
                        }),
                        clampToGround: true
                    }
                });
                var panel = new SectionChart({list:ptsAry,oList:list});
                new Popup({
                    content: panel,
                    titleLabel: "地形剖面图",
                    width: 650,
                    height: 370,
                    buttons: [],
                    onClose:lang.hitch(this,function(){
                        return true;
                    })
                });
            }));
        },
        makeChange:function(datas){
            var datas = datas;
            var def = new Deferred();
            var tIds = [];
            var pos = [];
            for(var i=0;i<datas.length;i++){
                var item = datas[i];
                tIds.push(item.id);
                pos.push(Cesium.Cartographic.fromDegrees(item.lgtd, item.lttd));
            }
            Cesium.sampleTerrain(window.viewer.terrainProvider, 9, pos).then(function (pos) {//去获取高程
                for (var i=0; i<tIds.length; i++) {
                    datas[i].height =   pos[i].height;
                }
                def.resolve(datas);
            });
            return def;
        }
    });
});
widgets/MapSection/Widget1.js
New file
@@ -0,0 +1,276 @@
///////////////////////////////////////////////////////////////////////////
// Copyright © 2018 NarutoGIS. All Rights Reserved.
// 模块描述:获取两点间地形剖面
///////////////////////////////////////////////////////////////////////////
define([
    "dojo/_base/declare",
    "dojo/_base/lang",
    'dojo/_base/html',
    "dojo/_base/fx",
    'jimu/BaseWidget',
    "dojo/topic",
    "dojo/Deferred",
    "dojo/on",
    'jimu/dijit/Popup',
    "./SectionChart"
], function (
    declare,
    lang,
    html,
    fx,
    BaseWidget,
    topic,
    Deferred,
    on,
    Popup,
    SectionChart
) {
    return declare("MapSection", [BaseWidget], {
        baseClass: "demo-widgets-MapSection",
        postCreate: function () {
            this.inherited(arguments);
            this._tooltip = this.createTooltip(this.map.cesiumWidget.container);
        },
        createTooltip: function (frameDiv) {
            var tooltip = function (frameDiv) {
                var div = document.createElement('DIV');
                div.className = "twipsy right";
                var arrow = document.createElement('DIV');
                arrow.className = "twipsy-arrow";
                div.appendChild(arrow);
                var title = document.createElement('DIV');
                title.className = "twipsy-inner";
                div.appendChild(title);
                this._div = div;
                this._title = title;
                // add to frame div and display coordinates
                frameDiv.appendChild(div);
            }
            tooltip.prototype.setVisible = function (visible) {
                this._div.style.display = visible ? 'block' : 'none';
            }
            tooltip.prototype.showAt = function (position, message) {
                if (position && message) {
                    this.setVisible(true);
                    this._title.innerHTML = message;
                    this._div.style.left = position.x + 10 + "px";
                    this._div.style.top = (position.y - this._div.clientHeight / 2) + "px";
                }
            }
            return new tooltip(frameDiv);
        },
        destroy: function () {
            this.inherited(arguments);
        },
        // click:function(){
        //     this.active = !this.active;
        //     if(this.active){
        //         this._tooltip.setVisible(true);
        //     }else{
        //         this._tooltip.setVisible(false);
        //     }
        //     this.clearEntity();
        // },
        onOpen: function () {
            this.map.scene.globe.baseColor = Cesium.Color.BLACK;
            $($('div.cesium-viewer').find('.cesium-baseLayerPicker-choices')[0]).children('div:eq(3)').trigger('click');
            this.active = true;
            this.clearEntity();
            this._tooltip.setVisible(true);
        },
        onClose: function () {
            this.active = false;
            this.clearEntity();
            this._tooltip.setVisible(false);
        },
        active: false,
        startup: function () {
            this.inherited(arguments);
            var handler = new Cesium.ScreenSpaceEventHandler(window.viewer.scene.canvas);
            handler.setInputAction(
                lang.hitch(this, function (movement) {
                    if (!this.active) return;
                    var ellipsoid = window.viewer.scene.globe.ellipsoid;
                    var ellipsoid = Cesium.Ellipsoid.WGS84;
//                    var cartesian = window.viewer.scene.camera.pickEllipsoid(movement.position, ellipsoid);//两种的经纬度获取的不一样
                    var pickRay = window.viewer.scene.camera.getPickRay(movement.position);
                    var cartesian = window.viewer.scene.globe.pick(pickRay, window.viewer.scene);
                    if (cartesian) {
                        var cartographic = ellipsoid.cartesianToCartographic(cartesian);
                        var longitudeString = Cesium.Math.toDegrees(cartographic.longitude);//.toFixed(2);
                        var latitudeString = Cesium.Math.toDegrees(cartographic.latitude);//.toFixed(2);
                        this.points.push({"lgtd": longitudeString, "lttd": latitudeString});
                        if (this.points.length == 2) {
                            //计算
                            var points = this.createHundryPoints(this.points);
                            //弹出
                            this.getData(points);
                            this.points = [];
                            this.active = false;
                            this._tooltip.setVisible(false);
                            this.bill2 = window.viewer.entities.add({
                                position: Cesium.Cartesian3.fromDegrees(longitudeString, latitudeString),
                                billboard: {
                                    image: "images/marker_green.png",
                                    pixelOffset: new Cesium.Cartesian2(0, 0),
                                    heightReference: Cesium.HeightReference.CLAMP_TO_GROUND,
                                    disableDepthTestDistance: Number.POSITIVE_INFINITY
                                }
                            });
                            return;
                        }
                        this.bill1 = window.viewer.entities.add({
                            position: Cesium.Cartesian3.fromDegrees(longitudeString, latitudeString),
                            billboard: {
                                image: "images/marker_green.png",
                                pixelOffset: new Cesium.Cartesian2(0, 0),
                                heightReference: Cesium.HeightReference.CLAMP_TO_GROUND,
                                disableDepthTestDistance: Number.POSITIVE_INFINITY
                            }
                        });
                    }
                }), Cesium.ScreenSpaceEventType.LEFT_CLICK);
            handler.setInputAction(
                lang.hitch(this, function (movement) {
                    if (!this.active) return;
                    if (this.points.length == 0) {
                        this._tooltip.showAt(movement.endPosition, "请获取起点");
                        return;
                    }
                    this._tooltip.showAt(movement.endPosition, "点击结束");
                }), Cesium.ScreenSpaceEventType.MOUSE_MOVE);
        },
        clearEntity: function () {
            window.viewer.entities.remove(this.bill1);
            window.viewer.entities.remove(this.bill2);
            window.viewer.entities.remove(this.line);
        },
        createHundryPoints: function (list) {
            var lgtd1 = list[0].lgtd;
            var lgtd100 = list[1].lgtd;
            var lgtdStep = (lgtd100 - lgtd1) / 1000;
            var lttd1 = list[0].lttd;
            var lttd100 = list[1].lttd;
            var lttdStep = (lttd100 - lttd1) / 1000;
            var ary = [];
            for (var i = 0; i < 1000; i++) {
                var lgtd = lgtd1 + (lgtdStep * i);
                var lttd = lttd1 + (lttdStep * i);
                ary.push({"id": i, "lgtd": lgtd, "lttd": lttd});
            }
            return ary;
        },
        points: [],
        getData: function (ary) {
            var mappints = [];
            for (var j = 0; j < ary.length; j++) {
                var pt = ary[j];
                mappints.push({lgtd: pt.lgtd, lttd: pt.lttd, height: 0});
            }
            //获取高程去
            var datas = mappints;
            var tIds = [];
            var pos = [];
            for (var i = 0; i < datas.length; i++) {
                var item = datas[i];
                tIds.push(item.id);
                pos.push(Cesium.Cartographic.fromDegrees(item.lgtd, item.lttd));
            }
            Cesium.sampleTerrain(window.viewer.terrainProvider, 9, pos).then(function (pos) {//去获取高程
                for (var i = 0; i < tIds.length; i++) {
                    datas[i].height = pos[i].height;
                }
                var list = datas;
                var ptsAry = [];
                var numbers_lgtd = [];
                var numbers_lttd = [];
                for (var j = 0; j < list.length; j++) {
                    var pt = list[j];
                    ptsAry.push(Number(pt.lgtd));
                    ptsAry.push(Number(pt.lttd));
                    ptsAry.push(Number(pt.height));
                    numbers_lgtd.push(Number(pt.lgtd));
                    numbers_lttd.push(Number(pt.lttd));
                }
                this.line = window.viewer.entities.add({
                    polyline: {
                        positions: Cesium.Cartesian3.fromDegreesArrayHeights(ptsAry),
                        width: 3,
                        material: new Cesium.PolylineOutlineMaterialProperty({
                            color: Cesium.Color.ORANGE,
                            outlineWidth: 1,
                            outlineColor: Cesium.Color.BLACK
                        }),
                        clampToGround: true
                    }
                });
                var panel = new SectionChart({list: ptsAry, oList: list});
                new Popup({
                    content: panel,
                    titleLabel: "地形剖面图",
                    width: 650,
                    height: 370,
                    buttons: [],
                    onClose: lang.hitch(this, function () {
                        return true;
                    })
                });
            });
        },
        makeChange: function (datas) {
            var datas = datas;
            var def = new Deferred();
            var tIds = [];
            var pos = [];
            for (var i = 0; i < datas.length; i++) {
                var item = datas[i];
                tIds.push(item.id);
                pos.push(Cesium.Cartographic.fromDegrees(item.lgtd, item.lttd));
            }
            Cesium.sampleTerrain(window.viewer.terrainProvider, 9, pos).then(function (pos) {//去获取高程
                for (var i = 0; i < tIds.length; i++) {
                    datas[i].height = pos[i].height;
                }
                def.resolve(datas);
            });
            return def;
        }
    });
});
widgets/MapSection/css/style.css
@@ -9,6 +9,15 @@
  padding: 1px;
}
.jimu-popup .title {
  position: absolute;
  top: 0;
  left: -10px;
  width: 100%;
  background: #094895;
  color: #fff;
}
.twipsy {
  display: block;
  position: absolute;
widgets/PathShow/Widget.js
@@ -222,7 +222,6 @@
                self.polyline = new DC.Polyline(positions);
                //let polyline = new DC.Polyline("115.70683949300007,28.80868520100006;115.70593267000004,28.80891538000003;115.70573287000002,28.809185460000037;115.7057028700001,28.809355380000056;115.70575282000004,28.809495260000062;115.70592263000003,28.809634940000024;115.70629213000007,28.80977433000004;115.70646180000006,28.809953920000055;115.70678137000004,28.810113400000034;115.70741052000005,28.810772090000057;115.70783996000011,28.81156093000004;115.70788980000009,28.811910580000074;115.70778984000003,28.81311990000006;115.7079396800001,28.81314966000008;115.70895838000001,28.813328150000075;115.70968745000005,28.813437160000035;115.71056640000006,28.813515900000027;115.71211457000004,28.81349400000005;115.71248412000011,28.813423560000047;115.71356299000001,28.813042490000043;115.71410242000002,28.812881970000035;115.71435212000006,28.812811690000046;115.71552091000001,28.812470510000026;115.71587055000009,28.812370180000073;115.71622027000001,28.81221990000006;115.71666985000002,28.811819650000075;115.71668980000004,28.811809640000035;115.71701948000009,28.811619350000058;115.71729922000009,28.81149915000003;115.71731926000007,28.811489150000057;115.71758895000005,28.811418890000027;115.71838819000004,28.81134804000004;115.71859801000005,28.811267860000044;115.7187678900001,28.811157740000056;115.71946731000003,28.81055734000006;115.71984702000009,28.81017722000007;115.72001692000003,28.809747300000026;115.72008691000008,28.809467510000047;115.72006693000003,28.809317560000068;115.72000694000008,28.80918777000005;115.7198670900001,28.809038000000044;115.71907790000012,28.808179460000076;115.71879820000004,28.80783009000004;115.71871824000004,28.807660240000075;115.71860836000008,28.80728062000003;115.71859843000004,28.807120740000073;115.71869836000008,28.806770940000035;115.71881536700005,28.806550792000053;115.71894816000008,28.80630094000003;115.71915807000005,28.80567121000007;115.71925796000005,28.80553117000005;115.71940780000011,28.805451090000076;115.72030710000001,28.805300190000025;115.72103645000004,28.805229420000046;115.72123626000007,28.80516932000006;115.72134625000001,28.805079200000023;115.72156602000007,28.804779190000033;115.7217059300001,28.804679170000043;115.72225551000008,28.80450865000006;115.72320486000001,28.80404806000007;115.72342470000001,28.804017860000044;115.72391438000011,28.80403733000003;115.72426408000001,28.803947030000074;115.72452390000001,28.803766950000067;115.72493368000005,28.803176980000046;115.72513363000007,28.80298688000005;115.72583321000002,28.80253657000003;115.72608304000005,28.802416410000035;115.72626292000007,28.802356260000067;115.72643281,28.802356090000046;115.72693254,28.80244558000004;115.72741227000006,28.802365250000037;115.72759209000003,28.80233510000005;115.72870154000009,28.802134210000077;115.72962110000003,28.801933620000057;115.73037078000004,28.80144333000004;115.73158032000003,28.80097268000003;115.73205015000008,28.800882390000027;115.7322700200001,28.80087227000007;115.7324500100001,28.800912100000062;115.73267991000012,28.801021840000033;115.73337961000004,28.80142107000006;115.73388942000008,28.801770480000073;115.7344391900001,28.80217981000004;115.7349390600001,28.802559170000052;115.7359787900001,28.803327960000047;115.73613875000001,28.80344776000004;115.7366385900001,28.80381717000006;115.73701844000004,28.803946910000036;115.73723843000005,28.803946790000055;115.73845828000003,28.80362634000005;115.73986818000003,28.803235920000077;115.74010815000008,28.803205810000065;115.74106817000006,28.803275350000035;115.74139818000003,28.803255240000055;115.74156817000005,28.803215150000028;115.74191813000004,28.80301516000003;115.74209823000001,28.80280528000003;115.74323836000008,28.800946260000046;115.74335838000002,28.800756360000037;115.74387855000009,28.799886810000032;115.7447387200001,28.798647450000033;115.74487875000011,28.79846757000007;115.74506881000002,28.798157710000055;115.74521883000011,28.79782797000007;115.74530890000005,28.79763808000007;115.74549890000003,28.79731828000007;115.74578899000005,28.79697839000005;115.74626911000007,28.796598610000046;115.74686931000008,28.796188820000054;115.74706933000004,28.795998890000078;115.74827974000004,28.794559780000043;115.74838983000006,28.794419880000078;115.74890002000006,28.793790280000053;115.74915008000005,28.793570420000037;115.74967030000005,28.793280620000075;115.75012047000007,28.79313078000007;115.75207125000009,28.792571260000045;115.75314176000006,28.792241560000036;115.75325184000008,28.792211630000054;115.75341192000008,28.79216167000004;115.75361198000007,28.792101770000045;115.75579329000004,28.791432710000038;115.7555131900001,28.790403320000053;115.75551322000001,28.790063580000037;115.75561325000001,28.789374140000064;115.75563340000008,28.788694640000074;115.75501319000011,28.78659594000004;115.75482304000002,28.78599638000003;115.75476308000009,28.785806500000035;115.7546430000001,28.78552663000005;115.75440289000005,28.785016970000072;115.75422287000004,28.784637160000045;115.7538727000001,28.783957600000065;115.75386271000002,28.78376774000003;115.75393281000004,28.78362782000005;115.75398282000003,28.783567920000053;115.75413292000007,28.78332811000007;115.75420295000004,28.78313821000006;115.7541829700001,28.782898440000054;115.7540829400001,28.782688500000063;115.75389286000006,28.782498660000044;115.75361270000008,28.782398640000054;115.75332257000002,28.78240864000003;115.75297239000008,28.782558420000043;115.7527922700001,28.782538430000045;115.75268227000004,28.782458490000067;115.75257223000006,28.78228856000004;115.75252218000003,28.782108750000077;115.75240221000001,28.781239330000062;115.75237225000001,28.780899560000023;115.75237219000007,28.78062974000005;115.75241223000012,28.780459850000057;115.75258239000004,28.77994022000007;115.7526224400001,28.77971038000004;115.75261238000007,28.77961049000004;115.75256236000007,28.779510540000047;115.7524023200001,28.779370640000025;115.75232229000005,28.77920073000007;115.75234228000011,28.779070820000072;115.75251243000002,28.77870112000005;115.75251247000006,28.77861112000005;115.7524424400001,28.77846123000006;115.7523323900001,28.77822144000004;115.75233234000007,28.77811151000003;115.75258249000001,28.777721830000075;115.7528726600001,28.777451980000023;115.75308279000001,28.777312160000065;115.75326289000009,28.777142250000054;115.75332293000008,28.776982390000057;115.7533329800001,28.776832530000036;115.75320290000002,28.776472700000056;115.75304285000004,28.775793220000025;115.75294287000008,28.775513360000048;115.75257270000009,28.77492372000006;115.75239261000002,28.774723830000028;115.75211250000007,28.774503990000028;115.75100210000005,28.773794390000035;115.7506920400001,28.77345457000007;115.75025181000001,28.773034860000053;115.74997181000003,28.772695140000053;115.74944168000002,28.77184567000006;115.7489215700001,28.771056230000056;115.74857146000011,28.77035679000005;115.74819142000001,28.769447370000023;115.74808136000001,28.769227560000047;115.74800141000003,28.76908769000005;115.74774131000004,28.76885788000004;115.7470811500001,28.768448240000055;115.74674110000001,28.768158450000044;115.74665116000006,28.768008550000047;115.74654109000005,28.767638800000043;115.74612108000008,28.76665956000005;115.74578113000007,28.765670270000044;115.74542108000003,28.765190700000062;115.7452910400001,28.76495091000004;115.74501110000006,28.764091490000055;115.74488110000004,28.76371178000005;115.74484109000002,28.76364190000004;115.74467106000009,28.763382080000042;115.74444101000006,28.76316225000005;115.74420107000003,28.762972450000063;115.74376100000006,28.76255289000005;115.74372361400003,28.76250723900006;115.74313097000004,28.761783580000042;115.74296104000007,28.76159376000004;115.7426710200001,28.761184100000037;115.74245099000007,28.760854390000077;115.74241100000006,28.760784510000065;115.74233100000004,28.760634610000068;115.74214104000009,28.760304940000026;115.74200107000001,28.76006509000007;115.7417010800001,28.759595510000054;115.7414710700001,28.759075950000067;115.74134110000011,28.75898612000003;115.74111110000001,28.758906230000036;115.74063113000011,28.75879653000004;115.74046118000001,28.75873658000006;115.74037120000003,28.758666670000025;115.74008120000008,28.758327080000072;115.7394612600001,28.757817660000057;115.73921131000009,28.75756800000005;115.73915134000003,28.757438120000074;115.73915134000003,28.757308200000068;115.7392013000001,28.757128280000074;115.73939136000001,28.756708440000068;115.73946132000003,28.756588470000054;115.7396813900001,28.75624866000004;115.74004134000006,28.75593870000006;115.7400713400001,28.755878720000055;115.74006136000003,28.755768790000047;115.73997142000007,28.755628890000025;115.7396914200001,28.755329250000045;115.73959142000001,28.755079460000047;115.73955150000006,28.754849630000024;115.73955147000004,28.754569840000045;115.73969154000008,28.754070090000027;115.73972150000009,28.753860170000053;115.73969155000009,28.753730310000037;115.73963150000009,28.75365037000006;115.73916163000001,28.753140940000037;115.73915162000003,28.753100950000032;115.73886169000002,28.75281134000005;115.73876168000004,28.75243162000004;115.73877174000006,28.752311690000056;115.73878173000003,28.752111850000063;115.73887171000001,28.751662080000074;115.73913181000012,28.750912430000028;115.73914178000007,28.750792500000045;115.73920183000007,28.750052960000062;115.73917187000006,28.74962325000007;115.7392119000001,28.74934348000005;115.7394419100001,28.748533890000033;115.73943198000006,28.747894280000025;115.73935201000006,28.747564580000073;115.73912209000002,28.746865120000052;115.73893212000007,28.74648546000003;115.7387322300001,28.746155830000077;115.73842227000011,28.745486370000037;115.73787241000002,28.744317430000024;115.73768252000002,28.744057760000032;115.73747260000005,28.743598140000074;115.73737256000004,28.743388320000065;115.73692274000007,28.74265907000006;115.73686272000009,28.742469280000023;115.7368828000001,28.74231934000005;115.73686278000002,28.742149470000")
                self.polyline.setStyle({
                    width: 10,
                    material: new DC.PolylineImageTrailMaterialProperty({
widgets/PathShow/nls/zh-cn/strings.js
@@ -1,5 +1,5 @@
define(
   ({
    _widgetLabel: "旅游路线"
    _widgetLabel: "轨迹线"
  })
);
widgets/PictureAnimation/Widget.html
New file
@@ -0,0 +1,2 @@
<div>
</div>
widgets/PictureAnimation/Widget.js
New file
@@ -0,0 +1,64 @@
///////////////////////////////////////////////////////////////////////////
// Copyright © 2018 NarutoGIS. All Rights Reserved.
// 模块描述:鹰眼地图
///////////////////////////////////////////////////////////////////////////
define([
    "dojo/_base/declare",
    "dojo/_base/lang",
    'dojo/_base/html',
    "dojo/_base/fx",
    'jimu/BaseWidget',
    "dojo/topic",
    "dojo/Deferred",
    "dojo/on",
    'jimu/dijit/Popup'
], function (
    declare,
    lang,
    html,
    fx,
    BaseWidget,
    topic,
    Deferred,
    on,
    Popup
) {
    return declare([BaseWidget], {
        baseClass: "demo-widgets-PictureAnimation",
        destroy: function () {
            this.inherited(arguments);
        },
        onOpen: function () {
            var self = this;
            self.layer = new DC.VectorLayer('layer')
            window.dcViewer.addLayer(self.layer)
            let position = new DC.Position(115.70683949300007, 28.80868520100006);
            let circle = new DC.Circle(position, 2000)
            circle.setStyle({
                material: new DC.ImageMaterialProperty({
                    image: './images/circle_bg.png'
                })
            })
            circle.rotateAmount = 0.01
            let model = new DC.Model(position, './images/zhui.glb')
            model.setStyle({
                scale: 100
            })
            model.rotateAmount = 4
            self.layer.addOverlay(model).addOverlay(circle)
            self.map.camera.flyTo({
                destination: Cesium.Cartesian3.fromDegrees(115.70683949300007,28.80868520100006, 3000)
            });
        },
        onClose: function () {
        },
        startup: function () {
        },
    });
});
widgets/PictureAnimation/css/style.css
widgets/PictureAnimation/images/icon.png
widgets/PictureAnimation/manifest.json
New file
@@ -0,0 +1,18 @@
{
  "name": "PictureAnimation",
  "2D": true,
  "3D": true,
  "platform": "HTML",
  "version": "2.10",
  "wabVersion": "2.10",
  "author": "NarutoGIS",
  "description": "",
  "copyright": "",
  "license": "",
  "properties": {
    "inPanel": false,
    "hasUIFile": true,
    "hasConfig": false,
    "supportMultiInstance": false
  }
}
widgets/PictureAnimation/nls/es/strings.js
New file
@@ -0,0 +1,5 @@
define(
   ({
    _widgetLabel: "PictureAnimation"
  })
);
widgets/PictureAnimation/nls/strings.js
New file
@@ -0,0 +1,7 @@
define({
  root: ({
    _widgetLabel: "PictureAnimation"
  }),
  "es": 1,
  "zh-cn": 1
});
widgets/PictureAnimation/nls/zh-cn/strings.js
New file
@@ -0,0 +1,5 @@
define(
   ({
    _widgetLabel: "图片动画"
  })
);