liuyg
2021-06-04 ca1b473b0965ad5d036348a5f9f88160c1ceb47d
Merge branch 'master' of http://192.168.0.105:10010/r/pyhmap
2 files modified
7 files added
436 ■■■■■ changed files
config.json 3 ●●●●● patch | view | raw | blame | history
widgets/SplitScreen/Widget.html 37 ●●●●● patch | view | raw | blame | history
widgets/SplitScreen/Widget.js 141 ●●●●● patch | view | raw | blame | history
widgets/SplitScreen/css/style.css 141 ●●●●● patch | view | raw | blame | history
widgets/SplitScreen/manifest.json 17 ●●●●● patch | view | raw | blame | history
widgets/SplitScreen/nls/es/strings.js 5 ●●●●● patch | view | raw | blame | history
widgets/SplitScreen/nls/strings.js 7 ●●●●● patch | view | raw | blame | history
widgets/SplitScreen/nls/zh-cn/strings.js 5 ●●●●● patch | view | raw | blame | history
widgets/Tool/Widget.js 80 ●●●● patch | view | raw | blame | history
config.json
@@ -153,6 +153,9 @@
          "relativeTo": "map"
        }
      }, {
        "name": "分屏对比",
        "uri": "widgets/SplitScreen/Widget"
      },{
        "name": "搜索栏",
        "uri": "widgets/searchL/Widget"
      }, {
widgets/SplitScreen/Widget.html
New file
@@ -0,0 +1,37 @@
<div>
    <div id="split_up" style="display: none;"></div>
    <div id="split_bottom" style="display: none;"></div>
    <div id="split_left" style="display: none;"></div>
    <div id="split_right" style="display: none;"></div>
    <div id="split_vertical_trisection_left" style="display: none;"></div>
    <div id="split_vertical_trisection_right" style="display: none;"></div>
    <div class="split-select">
        <button id="viewportType" value="NONE">
            <span>
                不使用分屏
            </span>
            <i class="layui-icon">
                &#xe625;
            </i>
        </button>
        <i class="layui-icon close">
            &#x1006;
        </i>
        <div class="split-select-option">
            <ul>
                <li label="NONE">不使用分屏</li>
                <li label="HORIZONTAL">水平分屏</li>
                <li label="VERTICAL">垂直分屏</li>
                <li label="TRIPLE">三视口</li>
                <li label="VerticalTrisection">水平三视口</li>
                <li label="QUAD">四视口</li>
            </ul>
        </div>
    </div>
</div>
widgets/SplitScreen/Widget.js
New file
@@ -0,0 +1,141 @@
define([
        'dojo/_base/declare',
        'dojo/_base/lang',
        'dojo/_base/array',
        'dojo/_base/html',
        'dojo/topic',
        'jimu/BaseWidget',
    ],
    function (declare,
        lang,
        array,
        html,
        topic,
        BaseWidget
    ) {
        return declare([BaseWidget], {
            baseClass: 'jimu-widget-SplitScreen',
            name: 'SplitScreen',
            startup: function () {
                var that = this;
                // 点击x隐藏面板
                $('#viewportType').change(function () {
                });
                $('#viewportType').click(function () {
                    $(".split-select .split-select-option").toggle();
                })
                $(".split-select .split-select-option li").click(function () {
                    if ($(this).text() != $('#viewportType span').text()) {
                        $('#viewportType span').text($(this).text())
                        var value = $(this).attr('label');
                        switch (value) {
                            case "NONE":
                                $("#split_up").css("display", "none");
                                $("#split_bottom").css("display", "none");
                                $("#split_left").css("display", "none");
                                $("#split_right").css("display", "none");
                                $("#split_vertical_trisection_left").css("display", "none");
                                $("#split_vertical_trisection_right").css("display", "none");
                                $('#pannel').hide();
                                break;
                            case "HORIZONTAL":
                                $("#split_up").css("display", "block");
                                $("#split_bottom").css("display", "block");
                                $("#split_left").css("display", "none");
                                $("#split_right").css("display", "none");
                                $("#split_vertical_trisection_left").css("display", "none");
                                $("#split_vertical_trisection_right").css("display", "none");
                                $('#pannel').show();
                                $('#b_one,#b_two,#g_one,#g_two').show();
                                $('#b_three,#g_three,#b_four,#g_four').hide();
                                break;
                            case "VERTICAL":
                                $("#split_up").css("display", "none");
                                $("#split_bottom").css("display", "none");
                                $("#split_left").css("display", "block");
                                $("#split_right").css("display", "block");
                                $("#split_vertical_trisection_left").css("display", "none");
                                $("#split_vertical_trisection_right").css("display", "none");
                                $('#pannel').show();
                                $('#b_one,#b_two,#g_one,#g_two').show();
                                $('#b_three,#g_three,#b_four,#g_four').hide();
                                break;
                            case "TRIPLE":
                                $("#split_up").css("display", "block");
                                $("#split_bottom").css("display", "none");
                                $("#split_left").css("display", "block");
                                $("#split_right").css("display", "block");
                                $("#split_vertical_trisection_left").css("display", "none");
                                $("#split_vertical_trisection_right").css("display", "none");
                                $('#pannel').show();
                                $('#b_one,#b_two,#g_one,#g_two,#b_three,#g_three').show();
                                $('#b_four,#g_four').hide();
                                break;
                            case "VerticalTrisection":
                                $("#split_up").css("display", "none");
                                $("#split_bottom").css("display", "none");
                                $("#split_left").css("display", "none");
                                $("#split_right").css("display", "none");
                                $("#split_vertical_trisection_left").css("display", "block");
                                $("#split_vertical_trisection_right").css("display", "block");
                                $('#b_one,#b_two,#g_one,#g_two,#b_three,#g_three').show();
                                $('#b_four,#g_four').hide();
                                $('#pannel').show();
                                break;
                            default:
                                $("#split_up").css("display", "block");
                                $("#split_bottom").css("display", "block");
                                $("#split_left").css("display", "block");
                                $("#split_right").css("display", "block");
                                $("#split_vertical_trisection_left").css("display", "none");
                                $("#split_vertical_trisection_right").css("display", "none");
                                $('#pannel').show();
                                $('#b_one,#b_two,#g_one,#g_two,#b_three,#g_three,#b_four,#g_four').show();
                                break;
                        }
                        that.map.scene.multiViewportMode = Cesium.MultiViewportMode[value];
                        $(".split-select .split-select-option").stop().hide();
                    }
                })
                $('.jimu-widget-SplitScreen .close').click(function () {
                    that.map.scene.multiViewportMode = Cesium.MultiViewportMode['NONE'];
                    $('.jimu-widget-SplitScreen').hide();
                });
            },
            onOpen: function () {
            },
            onClose: function () {
                //面板关闭的时候触发 (when this panel is closed trigger)
            },
            onMinimize: function () {
                this.resize();
            },
            onMaximize: function () {
                this.resize();
            },
            resize: function () {
            },
            destroy: function () {
                //销毁的时候触发
                //todo
                //do something before this func
                this.inherited(arguments);
            }
        });
    });
widgets/SplitScreen/css/style.css
New file
@@ -0,0 +1,141 @@
.jimu-widget-SplitScreen {
  position: fixed !important;
  top: 96px !important;
  right: 20px !important;
  width: auto !important;
  height: auto !important;
  background-color: #323a36;
  font-size: 14px;
  border: 1px solid rgb(69, 154, 251);
  /* opacity      : .8; */
  color: rgb(238, 235, 235);
  font-size: 16px;
  z-index: 101;
  border-radius: 10px 0 10px 10px;
  display: none;
}
.jimu-widget-SplitScreen .split-select {
  position: relative;
  margin: 6px;
  width: auto;
  height: auto;
}
.jimu-widget-SplitScreen .split-select .close {
  position: absolute;
  top: -20px;
  right: -20px;
  width: 24px;
  height: 24px;
  color: #fff;
  font-size: 14px;
  line-height: 24px;
  text-align: center;
  background: #323a36;
  border-radius: 50%;
  border: 1px solid rgb(69, 154, 251);
}
.jimu-widget-SplitScreen .split-select button {
  width: 160px;
  height: 30px;
  background: #fff;
  border-radius: 5px;
  font-size: 14px;
  padding: 0 6px;
  text-align: left;
  border: none;
  cursor: pointer;
}
.jimu-widget-SplitScreen .split-select button i {
  float: right;
}
.jimu-widget-SplitScreen .split-select button:focus {
  outline: none;
}
.jimu-widget-SplitScreen .split-select .split-select-option {
  display: none;
  margin-top: 6px;
  border-radius: 10px;
  color: #333;
  font-size: 14px;
  background: #fff;
}
.jimu-widget-SplitScreen .split-select .split-select-option ul {
  padding: 10px 0;
}
.jimu-widget-SplitScreen .split-select .split-select-option li {
  padding: 2px 8px;
  height: 26px;
  cursor: pointer;
}
.jimu-widget-SplitScreen .split-select .split-select-option li:hover {
  color: #fff;
  background-color: #0081c2;
}
#split_up {
  position: fixed;
  background-color: white;
  left: 50%;
  bottom: 50%;
  width: 2px;
  height: 50%;
  -webkit-transform: translate(-50%, 0);
}
#split_bottom {
  position: fixed;
  background-color: white;
  left: 50%;
  top: 50%;
  width: 2px;
  height: 50%;
  -webkit-transform: translate(-50%, 0);
}
#split_left {
  position: fixed;
  background-color: white;
  right: 50%;
  bottom: 50%;
  height: 2px;
  width: 50%;
  -webkit-transform: translate(0, -50%);
}
#split_right {
  position: fixed;
  background-color: white;
  left: 50%;
  bottom: 50%;
  height: 2px;
  width: 50%;
  -webkit-transform: translate(0, -50%);
}
#split_vertical_trisection_left {
  position: fixed;
  background-color: white;
  left: 33.33%;
  top: 0;
  height: 100%;
  width: 2px;
}
#split_vertical_trisection_right {
  position: fixed;
  background-color: white;
  right: 33.33%;
  top: 0;
  height: 100%;
  width: 2px;
}
widgets/SplitScreen/manifest.json
New file
@@ -0,0 +1,17 @@
{
  "name": "SplitScreen",
  "2D": true,
  "3D": true,
  "platform": "HTML",
  "version": "2.10",
  "wabVersion": "2.10",
  "author": "yuanjy",
  "description": "",
  "copyright": "",
  "license": "",
  "properties": {
    "hasConfig": false,
    "inPanel": false,
    "hasVersionManager": false
  }
}
widgets/SplitScreen/nls/es/strings.js
New file
@@ -0,0 +1,5 @@
define(
   ({
    _widgetLabel: "goSplitScreen"
  })
);
widgets/SplitScreen/nls/strings.js
New file
@@ -0,0 +1,7 @@
define({
  root: ({
    _widgetLabel: "SplitScreen"
  }),
  "es": 1,
  "zh-cn": 1
});
widgets/SplitScreen/nls/zh-cn/strings.js
New file
@@ -0,0 +1,5 @@
define(
   ({
    _widgetLabel: "分屏对比"
  })
);
widgets/Tool/Widget.js
@@ -3,16 +3,16 @@
// 模块描述:显示坐标
///////////////////////////////////////////////////////////////////////////
define([
    'dojo/_base/declare',
    'dojo/_base/lang',
    'dojo/_base/array',
    'dojo/_base/html',
    'dojo/topic',
    'jimu/BaseWidget',
    'jimu/utils',
    'jimu/css!libs/zTree_v3/css/zTreeStyle/zTreeStyle.css',
    'libs/zTree_v3/js/jquery.ztree.all'
],
        'dojo/_base/declare',
        'dojo/_base/lang',
        'dojo/_base/array',
        'dojo/_base/html',
        'dojo/topic',
        'jimu/BaseWidget',
        'jimu/utils',
        'jimu/css!libs/zTree_v3/css/zTreeStyle/zTreeStyle.css',
        'libs/zTree_v3/js/jquery.ztree.all'
    ],
    function (declare,
        lang,
        array,
@@ -43,11 +43,12 @@
                    $('.jimu-widget-Measurement').show();
                    $('.jimu-widget-Sign').hide();
                    $('.jimu-widget-FlyRoute').hide();
                    $('.jimu-widget-SplitScreen').hide();
                    $('.jimu-widget-DynamicRiver').hide();
                    $('.tool-y-box').toggle()
                })
                // 卷帘对比
                $('.rolling-tool').click(function () {
@@ -57,6 +58,7 @@
                    $('#widgets_Rolling_Widget_17').show();
                    $('.jimu-widget-Measurement').hide();
                    $('.jimu-widget-FlyRoute').hide();
                    $('.jimu-widget-SplitScreen').hide();
                    $('.jimu-widget-DynamicRiver').hide();
                    $('.tool-y-box').toggle();
                })
@@ -68,6 +70,7 @@
                    $('.jimu-widget-Sign').show();
                    $('.jimu-widget-Measurement').hide();
                    $('.jimu-widget-FlyRoute').hide();
                    $('.jimu-widget-SplitScreen').hide();
                    $('.jimu-widget-DynamicRiver').hide();
                    $('.tool-y-box').toggle()
                })
@@ -79,44 +82,37 @@
                    $('.jimu-widget-Measurement').hide();
                    $('.jimu-widget-Sign').hide();
                    $('.jimu-widget-FlyRoute').hide();
                    $('.jimu-widget-SplitScreen').hide();
                    $('.jimu-widget-DynamicRiver').hide();
                    $('.tool-y-box').toggle()
                })
                // 查询定位
                // $('.location-tool').click(function () {
                //     $('.jimu-widget-Location').show();
                //     $('.jimu-widget-FlyRoute').hide();
                //     $('.jimu-widget-Sign').hide();
                //     $('.jimu-widget-DynamicRiver').hide();
                //     $('.jimu-widget-Measurement').hide();
                //     $('.tool-y-box').toggle()
                // })
                // 地图打印
                // $('.MapPrinting-tool').click(function () {
                //     $('.jimu-widget-Location').hide();
                //     $('.jimu-widget-MapPrinting').show();
                //     $('.jimu-widget-CoorPosition').hide();
                //     $('.jimu-widget-Measurement').hide();
                //     $('.jimu-widget-Sign').hide();
                //     $('.jimu-widget-FlyRoute').hide();
                //     $('.jimu-widget-DynamicRiver').hide();
                //     $('.tool-y-box').toggle()
                // })
                $('.MapPrinting-tool').click(function () {
                    $('.jimu-widget-Location').hide();
                    $('.jimu-widget-MapPrinting').show();
                    $('.jimu-widget-CoorPosition').hide();
                    $('.jimu-widget-Measurement').hide();
                    $('.jimu-widget-Sign').hide();
                    $('.jimu-widget-FlyRoute').hide();
                    $('.jimu-widget-DynamicRiver').hide();
                    $('.jimu-widget-SplitScreen').hide();
                    $('.tool-y-box').toggle()
                })
                // 路线导航
                // $('.RouteNavigate-tool').click(function () {
                //     $('.jimu-widget-RouteNavigate').show();
                //     $('.jimu-widget-MapPrinting').hide();
                //     $('.jimu-widget-CoorPosition').hide();
                //     $('.jimu-widget-Measurement').hide();
                //     $('.jimu-widget-Sign').hide();
                //     $('.jimu-widget-FlyRoute').hide();
                //     $('.jimu-widget-DynamicRiver').hide();
                //     $('.tool-y-box').toggle()
                // })
                // 分屏对比
                $('.splitScreen-tool').click(function () {
                    $('.jimu-widget-SplitScreen').show();
                    $('.jimu-widget-CoorPosition').hide();
                    $('.jimu-widget-Location').hide();
                    $('.jimu-widget-Measurement').hide();
                    $('.jimu-widget-Sign').hide();
                    $('.jimu-widget-FlyRoute').hide();
                    $('.jimu-widget-DynamicRiver').hide();
                    $('.tool-y-box').toggle()
                })
            },
            closeToolBox: function (item) {