From 3597dfbb9e33ab955d259df876d72a99dc817d2a Mon Sep 17 00:00:00 2001
From: liuyg <376836862@qq.com>
Date: Mon, 28 Jun 2021 14:54:51 +0800
Subject: [PATCH] Merge branch 'master' of http://192.168.0.105:10010/r/pyhmap

---
 widgets/modelDiagram/Widget.js |  628 ++++++++++++++++++++++++++++----------------------------
 1 files changed, 318 insertions(+), 310 deletions(-)

diff --git a/widgets/modelDiagram/Widget.js b/widgets/modelDiagram/Widget.js
index 917226e..9364133 100644
--- a/widgets/modelDiagram/Widget.js
+++ b/widgets/modelDiagram/Widget.js
@@ -3,325 +3,333 @@
 // 模块描述:显示坐标
 ///////////////////////////////////////////////////////////////////////////
 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'
-],
-	function (declare,
-		lang,
-		array,
-		html,
-		topic,
-		BaseWidget,
-		aspect,
-		string,
-		utils
-	) {
-		return declare([BaseWidget], {
-			baseClass: 'jimu-widget-modelDiagram',
-			name: 'modelDiagram',
-			layers: {},
-			startup: function () {
-				var that = this;
-				// 暴露在外的接口
-				// that.beginModelDiagram();
-				// that.beginCesium();
+        '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,
+        html,
+        topic,
+        BaseWidget,
+        aspect,
+        string,
+        utils
+    ) {
+        return declare([BaseWidget], {
+            baseClass: 'jimu-widget-modelDiagram',
+            name: 'modelDiagram',
+            layers: {},
+            startup: function () {
+                var that = this;
+                // 暴露在外的接口
+                // that.beginModelDiagram();
+                // that.beginCesium();
 
-				// 三个按钮事件
-				$('.jimu-widget-modelDiagram').find('.once').click(() => {
-					that.once();
-				})
-				$('.jimu-widget-modelDiagram').find('.always').click(() => {
-					that.always();
-				})
-				$('.jimu-widget-modelDiagram').find('.stopPlay').click(() => {
-					that.stopPlay();
-				})
+                // 三个按钮事件
+                $('.jimu-widget-modelDiagram').find('.once').click(() => {
+                    that.once();
+                })
+                $('.jimu-widget-modelDiagram').find('.always').click(() => {
+                    that.always();
+                })
+                $('.jimu-widget-modelDiagram').find('.stopPlay').click(() => {
+                    that.stopPlay();
+                })
 
-				$('.jimu-widget-modelDiagram').find('.always').unbind("mousedown").bind("mousedown", function (event) {
-					if (event.which == 3) {
-						// console.log('you');
-						if ($("#modelDiagramCHONGFU").is(":hidden")) {//判断是否隐藏
-							$('#modelDiagramCHONGFU').show();
-							$('#modelDYes').click(() => {
-								that.getInput();
-								var W = $('#modelDiagramW').val()
-									, H = $('#modelDiagramH').val()
-									, JW = $('#modelDiagramJW').val()
-									, JH = $('#modelDiagramJH').val()
-									, as = that.a - (0.00001 * ((+H + 1) / 2)) * JH
-									, bs = that.b - (0.00001 * ((+W + 1) / 2)) * JW;
-								for (var i = 1; i <= H; i++) {
-									var aa = as * 100000;
-									aa += i * JH;
-									aa = aa / 100000;
-									for (var n = 1; n <= W; n++) {
-										var bb = bs * 100000;
-										bb += n * JW;
-										bb = bb / 100000;
-										// console.log(aa,bb)
-										that.always(aa, bb);
-									}
-								}
-							})
-							$('#modelDNo').click(() => {
-								$('#modelDiagramCHONGFU').hide();
-							})
-						}
-					} else if (event.which == 1) {
-						// console.log('zuo');
-					}
-				});
+                $('.jimu-widget-modelDiagram').find('.always').unbind("mousedown").bind("mousedown", function (event) {
+                    if (event.which == 3) {
+                        // console.log('you');
+                        if ($("#modelDiagramCHONGFU").is(":hidden")) { //判断是否隐藏
+                            $('#modelDiagramCHONGFU').show();
+                            $('#modelDYes').click(() => {
+                                that.getInput();
+                                var W = $('#modelDiagramW').val(),
+                                    H = $('#modelDiagramH').val(),
+                                    JW = $('#modelDiagramJW').val(),
+                                    JH = $('#modelDiagramJH').val(),
+                                    as = that.a - (0.00001 * ((+H + 1) / 2)) * JH,
+                                    bs = that.b - (0.00001 * ((+W + 1) / 2)) * JW;
+                                for (var i = 1; i <= H; i++) {
+                                    var aa = as * 100000;
+                                    aa += i * JH;
+                                    aa = aa / 100000;
+                                    for (var n = 1; n <= W; n++) {
+                                        var bb = bs * 100000;
+                                        bb += n * JW;
+                                        bb = bb / 100000;
+                                        // console.log(aa,bb)
+                                        that.always(aa, bb);
+                                    }
+                                }
+                            })
+                            $('#modelDNo').click(() => {
+                                $('#modelDiagramCHONGFU').hide();
+                            })
+                        }
+                    } else if (event.which == 1) {
+                        // console.log('zuo');
+                    }
+                });
 
-				$('.jimu-widget-modelDiagram').find('.closesmodelDiagram').click(() => {
-					$('.jimu-widget-modelDiagram').hide();
-					that.stopPlay();
-				})
-				//初演示
-				layui.use(['dropdown', 'util', 'layer', 'table'], function () {
-					var dropdown = layui.dropdown
-						, layer = layui.layer;
-					dropdown.render({
-						elem: '.models'
-						, data: [{
-							title: '人偶'
-							, value: './images/gltf/Cesium_Man.glb'
-							, id: 100
-							, num: [3, 3, 1, 1]
-						}, {
-							title: '飞机'
-							, value: './images/gltf/Cesium_Air.glb'
-							, id: 101
-							, num: [3, 3, 30, 30]
-						}, {
-							title: '飞机2'
-							, value: './images/gltf/CesiumDrone.glb'
-							, id: 102
-							, num: [3, 3, 7, 7]
-						}, {
-							title: '装甲车'
-							, value: './images/gltf/GroundVehicle.glb'
-							, id: 103
-							, num: [3, 3, 4, 9]
-						}, {
-							title: '热气球'
-							, value: './images/gltf/CesiumBalloon.glb'
-							, id: 104
-							, num: [3, 3, 1, 1]
-						}, {
-							title: '牛奶车'
-							, value: './images/gltf/CesiumMilkTruck.glb'
-							, id: 105
-							, num: [3, 3, 1, 1]
-						}, {
-							title: '牛奶车gltf'
-							, value: './images/gltf/CesiumMilkTruck.gltf'
-							, id: 106
-							, num: [3, 3, 1, 1]
-						}, {
-							title: '人gltf'
-							, value: './images/gltf/walk.gltf'
-							, id: 107
-							, num: [3, 3, 1, 1]
-						}
-						]
-						, click: function (obj) {
-							layer.tips('选择了:' + obj.title, this.elem, { tips: [1, '#5FB878'] });
-							that.urls = obj.value;
-							var dom = $('.models');
-							dom.empty();
-							var str = `${obj.title} <i class="layui-icon layui-icon-down layui-font-12"></i>`
-							dom.append(str);
-							that.setNum(obj.num)
-						}
-					});
-				});
+                $('.jimu-widget-modelDiagram').find('.closesmodelDiagram').click(() => {
+                    $('.jimu-widget-modelDiagram').hide();
+                    that.stopPlay();
+                })
+                //初演示
+                layui.use(['dropdown', 'util', 'layer', 'table'], function () {
+                    var dropdown = layui.dropdown,
+                        layer = layui.layer;
+                    dropdown.render({
+                        elem: '.models',
+                        data: [{
+                            title: '人偶',
+                            value: './images/gltf/Cesium_Man.glb',
+                            id: 100,
+                            num: [3, 3, 1, 1]
+                        }, {
+                            title: '飞机',
+                            value: './images/gltf/Cesium_Air.glb',
+                            id: 101,
+                            num: [3, 3, 30, 30]
+                        }, {
+                            title: '飞机2',
+                            value: './images/gltf/CesiumDrone.glb',
+                            id: 102,
+                            num: [3, 3, 7, 7]
+                        }, {
+                            title: '装甲车',
+                            value: './images/gltf/GroundVehicle.glb',
+                            id: 103,
+                            num: [3, 3, 4, 9]
+                        }, {
+                            title: '热气球',
+                            value: './images/gltf/CesiumBalloon.glb',
+                            id: 104,
+                            num: [3, 3, 1, 1]
+                        }, {
+                            title: '牛奶车',
+                            value: './images/gltf/CesiumMilkTruck.glb',
+                            id: 105,
+                            num: [3, 3, 1, 1]
+                        }, {
+                            title: '牛奶车gltf',
+                            value: './images/gltf/CesiumMilkTruck.gltf',
+                            id: 106,
+                            num: [3, 3, 1, 1]
+                        }, {
+                            title: '人gltf',
+                            value: './images/gltf/walk.gltf',
+                            id: 107,
+                            num: [3, 3, 1, 1]
+                        }],
+                        click: function (obj) {
+                            layer.tips('选择了:' + obj.title, this.elem, {
+                                tips: [1, '#5FB878']
+                            });
+                            that.urls = obj.value;
+                            var dom = $('.models');
+                            dom.empty();
+                            var str = `${obj.title} <i class="layui-icon layui-icon-down layui-font-12"></i>`
+                            dom.append(str);
+                            that.setNum(obj.num)
+                        }
+                    });
+                });
 
 
-			},
-			urls: './images/gltf/Cesium_Man.glb',
-			setNum: function (num) {
-				$('#modelDiagramW').val(num[0])
-				$('#modelDiagramH').val(num[1])
-				$('#modelDiagramJW').val(num[2])
-				$('#modelDiagramJH').val(num[3])
-			},
-			beginCesium: function (a, b, g, once) {
-				var viewer = this.map
-					, that = this
-					, url = that.urls;
+            },
+            urls: './images/gltf/Cesium_Man.glb',
+            setNum: function (num) {
+                $('#modelDiagramW').val(num[0])
+                $('#modelDiagramH').val(num[1])
+                $('#modelDiagramJW').val(num[2])
+                $('#modelDiagramJH').val(num[3])
+            },
+            beginCesium: function (a, b, g, once) {
+                var viewer = this.map,
+                    that = this,
+                    url = that.urls;
 
-				//静态
-				// var position = Cesium.Cartesian3.fromDegrees(116.058987, 28.973468, 1000);
-				var position = Cesium.Cartesian3.fromDegrees(a, b, g);
-				that.entityPeople = viewer.entities.add({//viewer.trackedEntity跟随
-					name: url,
-					position: position,
-					model: {
-						uri: url,
-					},
-				});
-				if (once == 'once') {
-					viewer.trackedEntity = that.entityPeople;
-				}
+                //静态
+                // var position = Cesium.Cartesian3.fromDegrees(116.058987, 28.973468, 1000);
+                var position = Cesium.Cartesian3.fromDegrees(a, b, g);
+                that.entityPeople = viewer.entities.add({ //viewer.trackedEntity跟随
+                    name: url,
+                    position: position,
+                    model: {
+                        uri: url,
+                        scale: 110
+                    },
+                });
 
 
-			},
-			entityPeople: '',
-			seeEntity: true,
-			openEntity: false,
-			time: '',
-			beginPlay: function () {
-				var postion = [116.058987, 28.973468, 1000]
-					, a = 116.058987
-					, b = 28.973468
-					, g = 1000;
-				this.time = setInterval(() => {
 
-					if (this.openEntity) {
-						// this.map.entities.remove(this.entityPeople)//删除entity
-						// this.map.entities.remove(this.map.trackedEntity)//删除entity
-						this.map.entities.removeAll();
-					} else {
-						a += 0.01;
-						b += 0.01;
-						// g += 0.01;
-						this.beginCesium(a, b);
-					}
-					this.openEntity = !this.openEntity;
-					console.log(this.openEntity)
-				}, 1000);
-			},
-			stopPlay: function () {
-				this.map.entities.removeAll();
-				// clearInterval(this.time);
-			},
-			seemodo: function () {
-				var that = this;
-				if (that.seeEntity) {
-					this.map.trackedEntity = that.entityPeople;//目标视野跟踪
-				} else {
-					this.map.trackedEntity = '';
-				}
-				that.seeEntity = !that.seeEntity;
-				console.log(that.seeEntity)
-				// console.log('seedom')
-				// this.map.entities.remove(this.entityPeople)//删除entity
-			},
-			getInput: function () {
-				this.a = $('#modelDiagramjdu').val() == '' ? 116.058987 : +$('#modelDiagramjdu').val();
-				this.b = $('#modelDiagramwdu').val() == '' ? 28.973468 : +$('#modelDiagramwdu').val();
-				this.g = $('#modelDiagramgdu').val() == '' ? 1000 : +$('#modelDiagramgdu').val();
-			},
-			a: '',
-			b: '',
-			g: '',
-			//重复添加
-			always: function (aa = 'a', bb = 'b') {
-				this.getInput();
-				// console.log([a, b, g])
-				if (aa != 'a' && bb != 'b') {
-					this.beginCesium(aa, bb, this.g);
-				} else {
-					this.beginCesium(this.a, this.b, this.g);
-				}
-			},
-			//单次添加
-			once: function () {
-				this.stopPlay();
-				this.getInput();
-				// console.log([a, b, g])
-				this.beginCesium(this.a, this.b, this.g, 'once');
-			},
-			closeModo: function () {
-				if (this.openEntity) {
-					// this.map.entities.remove(this.entityPeople)//删除entity
-					// this.map.entities.remove(this.map.trackedEntity)//删除entity
-					this.map.entities.removeAll();
-				} else {
-					this.getInput
-					// console.log([a, b, g])
-					this.beginCesium(a, b, g);
-				}
-				this.openEntity = !this.openEntity;
-				console.log(this.openEntity)
-				// var that = this;
-				// if (that.seeEntity) {
-				// 	this.map.trackedEntity = that.entityPeople;//目标视野跟踪
-				// } else {
-				// 	this.map.trackedEntity = '';
-				// }
-				// viewer.entities.remove(that.entityPeople)//删除entity
-
-				// viewer.entities.removeById(id)//根据id删除entity
-
-				// viewer.entities.removeAll()//清空所有entity
-
-				// viewer.entities.getById(id)// 获取enetity
-
-				// viewer.entities.contains(entity)// 是否包含
-				// viewer.entities.removeById('')
-			},
-			beginModelDiagram: function () {
-				var that = this
-					, viewer = that.map
-					, scene = viewer.scene;
-				// scene.globe.show = false;
-				viewer.shouldAnimate = true;
-				var collect = new Cesium.InstanceLayer(scene._context)
-					, url = "./images/gltf/walk.gltf"
-					, gltf = viewer.entities.add({
-						name: "gltf",
-						position: new Cesium.Cartesian3.fromDegrees(115.783206 - 0.002034006, 28.810602 - 0.005072179, 800),
-						model: {
-							uri: url
-						}
-					});
-				viewer.zoomTo(gltf);
-				$("#modelDiagramSelOpt").change(function () {
-					var value = $(this).val();
-					if (value === "1") {
-						collect.removeInstance(url, [collect._instances._array[0]._array[0].id]);
-						viewer.entities._show = true;
-					} else {
-						viewer.entities._show = false;
-						collect.add(url,
-							{
-								position: new Cesium.Cartesian3.fromDegrees(115.783206 - 0.002034006, 28.810602 - 0.005072179, 1000)
-							});
-
-					}
-				})
-			},
-			onClose: function () {
-				//面板关闭的时候触发 (when this panel is closed trigger)
-			},
-
-			onMinimize: function () {
-				this.resize();
-			},
-
-			onMaximize: function () {
-				this.resize();
-			},
-
-			resize: function () {
-
-			},
+                if (once == 'once') {
+                    // viewer.trackedEntity = that.entityPeople;
+                    that.map.camera.flyTo({
+                        destination: position,
+                        duration: 3
+                    });
+                }
 
 
-			destroy: function () {
-				//销毁的时候触发
-				//todo
-				//do something before this func
-				this.inherited(arguments);
-			}
+            },
+            entityPeople: '',
+            seeEntity: true,
+            openEntity: false,
+            time: '',
+            beginPlay: function () {
+                var postion = [116.058987, 28.973468, 1000],
+                    a = 116.058987,
+                    b = 28.973468,
+                    g = 1000;
+                this.time = setInterval(() => {
 
-		});
-	});
\ No newline at end of file
+                    if (this.openEntity) {
+                        // this.map.entities.remove(this.entityPeople)//删除entity
+                        // this.map.entities.remove(this.map.trackedEntity)//删除entity
+                        this.map.entities.removeAll();
+                    } else {
+                        a += 0.01;
+                        b += 0.01;
+                        // g += 0.01;
+                        this.beginCesium(a, b);
+                    }
+                    this.openEntity = !this.openEntity;
+                    console.log(this.openEntity)
+                }, 1000);
+            },
+            stopPlay: function () {
+                this.map.entities.removeAll();
+                // clearInterval(this.time);
+            },
+            seemodo: function () {
+                var that = this;
+                if (that.seeEntity) {
+                    this.map.trackedEntity = that.entityPeople; //目标视野跟踪
+                } else {
+                    this.map.trackedEntity = '';
+                }
+                that.seeEntity = !that.seeEntity;
+                console.log(that.seeEntity)
+                // console.log('seedom')
+                // this.map.entities.remove(this.entityPeople)//删除entity
+            },
+            getInput: function () {
+                this.a = $('#modelDiagramjdu').val() == '' ? 116.058987 : +$('#modelDiagramjdu').val();
+                this.b = $('#modelDiagramwdu').val() == '' ? 28.973468 : +$('#modelDiagramwdu').val();
+                this.g = $('#modelDiagramgdu').val() == '' ? 1000 : +$('#modelDiagramgdu').val();
+            },
+            a: '',
+            b: '',
+            g: '',
+            //重复添加
+            always: function (aa = 'a', bb = 'b') {
+                this.getInput();
+                // console.log([a, b, g])
+                if (aa != 'a' && bb != 'b') {
+                    this.beginCesium(aa, bb, this.g);
+                } else {
+                    this.beginCesium(this.a, this.b, this.g);
+                }
+            },
+            //单次添加
+            once: function () {
+                this.stopPlay();
+                this.getInput();
+                // console.log([a, b, g])
+                this.beginCesium(this.a, this.b, this.g, 'once');
+            },
+            closeModo: function () {
+                if (this.openEntity) {
+                    // this.map.entities.remove(this.entityPeople)//删除entity
+                    // this.map.entities.remove(this.map.trackedEntity)//删除entity
+                    this.map.entities.removeAll();
+                } else {
+                    this.getInput
+                    // console.log([a, b, g])
+                    this.beginCesium(a, b, g);
+                }
+                this.openEntity = !this.openEntity;
+                console.log(this.openEntity)
+                // var that = this;
+                // if (that.seeEntity) {
+                // 	this.map.trackedEntity = that.entityPeople;//目标视野跟踪
+                // } else {
+                // 	this.map.trackedEntity = '';
+                // }
+                // viewer.entities.remove(that.entityPeople)//删除entity
+
+                // viewer.entities.removeById(id)//根据id删除entity
+
+                // viewer.entities.removeAll()//清空所有entity
+
+                // viewer.entities.getById(id)// 获取enetity
+
+                // viewer.entities.contains(entity)// 是否包含
+                // viewer.entities.removeById('')
+            },
+            beginModelDiagram: function () {
+                var that = this,
+                    viewer = that.map,
+                    scene = viewer.scene;
+                // scene.globe.show = false;
+                viewer.shouldAnimate = true;
+                var collect = new Cesium.InstanceLayer(scene._context),
+                    url = "./images/gltf/walk.gltf",
+                    gltf = viewer.entities.add({
+                        name: "gltf",
+                        position: new Cesium.Cartesian3.fromDegrees(115.783206 - 0.002034006, 28.810602 - 0.005072179, 800),
+                        model: {
+                            uri: url
+                        }
+                    });
+                viewer.zoomTo(gltf);
+                $("#modelDiagramSelOpt").change(function () {
+                    var value = $(this).val();
+                    if (value === "1") {
+                        collect.removeInstance(url, [collect._instances._array[0]._array[0].id]);
+                        viewer.entities._show = true;
+                    } else {
+                        viewer.entities._show = false;
+                        collect.add(url, {
+                            position: new Cesium.Cartesian3.fromDegrees(115.783206 - 0.002034006, 28.810602 - 0.005072179, 1000)
+                        });
+
+                    }
+                })
+            },
+            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);
+            }
+
+        });
+    });
\ No newline at end of file

--
Gitblit v1.9.3