From db45def58993c3ed79b47f1a0ec19740ec229211 Mon Sep 17 00:00:00 2001
From: shuishen <1109946754@qq.com>
Date: Fri, 11 Jun 2021 11:22:24 +0800
Subject: [PATCH] 工具下面做相关更改,及逻辑优化

---
 widgets/Measurement/Widget.js |   41 ++++++++++++++++++++++++++++++-----------
 1 files changed, 30 insertions(+), 11 deletions(-)

diff --git a/widgets/Measurement/Widget.js b/widgets/Measurement/Widget.js
index 9d87b9f..c0a2272 100644
--- a/widgets/Measurement/Widget.js
+++ b/widgets/Measurement/Widget.js
@@ -22,7 +22,10 @@
             baseClass: 'jimu-widget-Measurement',   
             name: 'Measurement',
             type: '',
+            measureSurface: null,
             startup: function () {
+                topic.subscribe("closeMeasurement", lang.hitch(this, this.closeMeasurement));
+                var that = this;
                 var _type = this.type
                 $('#measure_length_danwei').change(function () {
                    var  num = $('#measure_length_danwei .option:selected').val();
@@ -31,53 +34,69 @@
                 $('.close-measurement').click(function () {
                     $('.jimu-widget-Measurement').hide();
                 });
-                var measureSurface = new mars3d.Measure({
-                    viewer: viewer,
-                    terrain: !1
-                });
+             
                 $('#measuerLength').click(function () {
-                    measureSurface.measuerLength({
+                    that.measureSurface.measuerLength({
                         terrain: !1,
                         unit: _type,
                     })
                 })
 
                 $('#measuerLength2').click(function () {
-                    measureSurface.measuerLength({
+                    that.measureSurface.measuerLength({
                         terrain: !0,
                         unit: _type,
                     })
                 })
                 $('#measureArea').click(function () {
-                    measureSurface.measureArea({
+                    that.measureSurface.measureArea({
                         unit: _type
                     });
                 })
 
 
                 $('#measureHeight').click(function () {
-                    measureSurface.measureHeight({
+                    that.measureSurface.measureHeight({
                         isSuper: !1,
                         unit: _type,
                     })
                 })
 
                 $('#measureHeight2').click(function () {
-                    measureSurface.measureHeight({
+                    that.measureSurface.measureHeight({
                         isSuper: !0,
                         unit: _type,
                     })
                 })
 
                 $('#clearDraw').click(function () {
-                    measureSurface.clearMeasure()
+                    that.measureSurface.clearMeasure()
                 })
 
                 $('.xx').click(function () {
                     $('.jimu-widget-Measurement').hide()
-                    measureSurface.clearMeasure()
+                    that.measureSurface.clearMeasure()
 
                 })
+            },
+
+            onOpen: function onOpen() {
+                var that = this;
+                that.measureSurface = new mars3d.Measure({
+                    viewer: that.map,
+                    terrain: !1
+                });
+            },
+
+            closeMeasurement: function (item) {
+
+                var that = this;
+                if (item == this.name) {
+                    $('.jimu-widget-Measurement').hide()
+                    that.measureSurface.clearMeasure()
+
+                }
+
             }
 
         });

--
Gitblit v1.9.3