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