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] 工具下面做相关更改,及逻辑优化

---
 config.json                           |   19 
 widgets/FlyRoute/Widget.html          |   31 
 widgets/FlyRoute/images/location4.png |    0 
 widgets/FlyRoute/FileSaver.js         |  244 ++
 widgets/FlyRoute/css/style.css        |  152 +
 widgets/Tool/Widget.html              |    4 
 widgets/FlyRoute/Widget22.js          |  251 +++
 widgets/SplitScreen/Widget.js         |   36 
 widgets/FlyRoute/flyroute copy.json   | 2944 +++++++++++++++++++++++++++++++++++
 widgets/FlyRoute/nls/zh-cn/strings.js |    5 
 widgets/FlyRoute/nls/strings.js       |    7 
 widgets/LeftNavigationBar/Widget.js   |    2 
 widgets/visualAngle/Widget.js         |   25 
 widgets/FlyRoute/manifest.json        |   17 
 widgets/Measurement/Widget.js         |   41 
 widgets/Sign/Widget.js                |   89 
 widgets/FlyRoute/Widget.js            |  250 +++
 widgets/Tool/Widget.js                |  137 +
 index.html                            |    1 
 widgets/Tool/css/style.css            |    2 
 widgets/FlyRoute/nls/es/strings.js    |    5 
 widgets/FlyRoute/flyroute.json        |  224 ++
 widgets/FlyRoute/fly.js               |  423 +++++
 widgets/Rolling/Widget.js             |   38 
 24 files changed, 4,844 insertions(+), 103 deletions(-)

diff --git a/config.json b/config.json
index 4ec6ffc..c26a878 100644
--- a/config.json
+++ b/config.json
@@ -104,6 +104,17 @@
         }
       },
       {
+        "name": "飞行路线",
+        "uri": "widgets/FlyRoute/Widget",
+        "position": {
+          "right": 10,
+          "top": 96,
+          "width": "260px",
+          "height": "64%",
+          "relativeTo": "map"
+        }
+      },
+      {
         "name": "查询定位",
         "uri": "widgets/Location/Widget"
       },
@@ -354,10 +365,10 @@
     ],
     "mapOptions": {
       "positionInfo": {
-        "xmin": 114.079032,
-        "ymin": 30.223379,
-        "xmax": 118.791967,
-        "ymax": 28.127233
+        "xmin": 111.807347,
+        "ymin": 30.840173,
+        "xmax": 120.020036,
+        "ymax": 27.215672
       },
       "animation": false,
       "baseLayerPicker": true,
diff --git a/index.html b/index.html
index 4663aa0..25a9ba3 100644
--- a/index.html
+++ b/index.html
@@ -90,6 +90,7 @@
         }
 
         .cesium-viewer-navigationContainer {
+            display: none !important;
             top: 90px !important;
         }
 
diff --git a/widgets/FlyRoute/FileSaver.js b/widgets/FlyRoute/FileSaver.js
new file mode 100644
index 0000000..bf7a192
--- /dev/null
+++ b/widgets/FlyRoute/FileSaver.js
@@ -0,0 +1,244 @@
+/* FileSaver.js
+ * A saveAs() FileSaver implementation.
+ * 2014-11-29
+ *
+ * By Eli Grey, http://eligrey.com
+ * License: X11/MIT
+ *   See https://github.com/eligrey/FileSaver.js/blob/master/LICENSE.md
+ */
+
+/*global self */
+/*jslint bitwise: true, indent: 4, laxbreak: true, laxcomma: true, smarttabs: true, plusplus: true */
+
+/*! @source http://purl.eligrey.com/github/FileSaver.js/blob/master/FileSaver.js */
+
+var saveAs = saveAs
+  // IE 10+ (native saveAs)
+  || (typeof navigator !== "undefined" &&
+      navigator.msSaveOrOpenBlob && navigator.msSaveOrOpenBlob.bind(navigator))
+  // Everyone else
+  || (function(view) {
+	"use strict";
+	// IE <10 is explicitly unsupported
+	if (typeof navigator !== "undefined" &&
+	    /MSIE [1-9]\./.test(navigator.userAgent)) {
+		return;
+	}
+	var
+		  doc = view.document
+		  // only get URL when necessary in case Blob.js hasn't overridden it yet
+		, get_URL = function() {
+			return view.URL || view.webkitURL || view;
+		}
+		, save_link = doc.createElementNS("http://www.w3.org/1999/xhtml", "a")
+		, can_use_save_link = "download" in save_link
+		, click = function(node) {
+			var event = doc.createEvent("MouseEvents");
+			event.initMouseEvent(
+				"click", true, false, view, 0, 0, 0, 0, 0
+				, false, false, false, false, 0, null
+			);
+			node.dispatchEvent(event);
+		}
+		, webkit_req_fs = view.webkitRequestFileSystem
+		, req_fs = view.requestFileSystem || webkit_req_fs || view.mozRequestFileSystem
+		, throw_outside = function(ex) {
+			(view.setImmediate || view.setTimeout)(function() {
+				throw ex;
+			}, 0);
+		}
+		, force_saveable_type = "application/octet-stream"
+		, fs_min_size = 0
+		// See https://code.google.com/p/chromium/issues/detail?id=375297#c7 and
+		// https://github.com/eligrey/FileSaver.js/commit/485930a#commitcomment-8768047
+		// for the reasoning behind the timeout and revocation flow
+		, arbitrary_revoke_timeout = 500 // in ms
+		, revoke = function(file) {
+			var revoker = function() {
+				if (typeof file === "string") { // file is an object URL
+					get_URL().revokeObjectURL(file);
+				} else { // file is a File
+					file.remove();
+				}
+			};
+			if (view.chrome) {
+				revoker();
+			} else {
+				setTimeout(revoker, arbitrary_revoke_timeout);
+			}
+		}
+		, dispatch = function(filesaver, event_types, event) {
+			event_types = [].concat(event_types);
+			var i = event_types.length;
+			while (i--) {
+				var listener = filesaver["on" + event_types[i]];
+				if (typeof listener === "function") {
+					try {
+						listener.call(filesaver, event || filesaver);
+					} catch (ex) {
+						throw_outside(ex);
+					}
+				}
+			}
+		}
+		, FileSaver = function(blob, name) {
+			// First try a.download, then web filesystem, then object URLs
+			var
+				  filesaver = this
+				, type = blob.type
+				, blob_changed = false
+				, object_url
+				, target_view
+				, dispatch_all = function() {
+					dispatch(filesaver, "writestart progress write writeend".split(" "));
+				}
+				// on any filesys errors revert to saving with object URLs
+				, fs_error = function() {
+					// don't create more object URLs than needed
+					if (blob_changed || !object_url) {
+						object_url = get_URL().createObjectURL(blob);
+					}
+					if (target_view) {
+						target_view.location.href = object_url;
+					} else {
+						var new_tab = view.open(object_url, "_blank");
+						if (new_tab == undefined && typeof safari !== "undefined") {
+							//Apple do not allow window.open, see http://bit.ly/1kZffRI
+							view.location.href = object_url
+						}
+					}
+					filesaver.readyState = filesaver.DONE;
+					dispatch_all();
+					revoke(object_url);
+				}
+				, abortable = function(func) {
+					return function() {
+						if (filesaver.readyState !== filesaver.DONE) {
+							return func.apply(this, arguments);
+						}
+					};
+				}
+				, create_if_not_found = {create: true, exclusive: false}
+				, slice
+			;
+			filesaver.readyState = filesaver.INIT;
+			if (!name) {
+				name = "download";
+			}
+			if (can_use_save_link) {
+				object_url = get_URL().createObjectURL(blob);
+				save_link.href = object_url;
+				save_link.download = name;
+				click(save_link);
+				filesaver.readyState = filesaver.DONE;
+				dispatch_all();
+				revoke(object_url);
+				return;
+			}
+			// Object and web filesystem URLs have a problem saving in Google Chrome when
+			// viewed in a tab, so I force save with application/octet-stream
+			// http://code.google.com/p/chromium/issues/detail?id=91158
+			// Update: Google errantly closed 91158, I submitted it again:
+			// https://code.google.com/p/chromium/issues/detail?id=389642
+			if (view.chrome && type && type !== force_saveable_type) {
+				slice = blob.slice || blob.webkitSlice;
+				blob = slice.call(blob, 0, blob.size, force_saveable_type);
+				blob_changed = true;
+			}
+			// Since I can't be sure that the guessed media type will trigger a download
+			// in WebKit, I append .download to the filename.
+			// https://bugs.webkit.org/show_bug.cgi?id=65440
+			if (webkit_req_fs && name !== "download") {
+				name += ".download";
+			}
+			if (type === force_saveable_type || webkit_req_fs) {
+				target_view = view;
+			}
+			if (!req_fs) {
+				fs_error();
+				return;
+			}
+			fs_min_size += blob.size;
+			req_fs(view.TEMPORARY, fs_min_size, abortable(function(fs) {
+				fs.root.getDirectory("saved", create_if_not_found, abortable(function(dir) {
+					var save = function() {
+						dir.getFile(name, create_if_not_found, abortable(function(file) {
+							file.createWriter(abortable(function(writer) {
+								writer.onwriteend = function(event) {
+									target_view.location.href = file.toURL();
+									filesaver.readyState = filesaver.DONE;
+									dispatch(filesaver, "writeend", event);
+									revoke(file);
+								};
+								writer.onerror = function() {
+									var error = writer.error;
+									if (error.code !== error.ABORT_ERR) {
+										fs_error();
+									}
+								};
+								"writestart progress write abort".split(" ").forEach(function(event) {
+									writer["on" + event] = filesaver["on" + event];
+								});
+								writer.write(blob);
+								filesaver.abort = function() {
+									writer.abort();
+									filesaver.readyState = filesaver.DONE;
+								};
+								filesaver.readyState = filesaver.WRITING;
+							}), fs_error);
+						}), fs_error);
+					};
+					dir.getFile(name, {create: false}, abortable(function(file) {
+						// delete file if it already exists
+						file.remove();
+						save();
+					}), abortable(function(ex) {
+						if (ex.code === ex.NOT_FOUND_ERR) {
+							save();
+						} else {
+							fs_error();
+						}
+					}));
+				}), fs_error);
+			}), fs_error);
+		}
+		, FS_proto = FileSaver.prototype
+		, saveAs = function(blob, name) {
+			return new FileSaver(blob, name);
+		}
+	;
+	FS_proto.abort = function() {
+		var filesaver = this;
+		filesaver.readyState = filesaver.DONE;
+		dispatch(filesaver, "abort");
+	};
+	FS_proto.readyState = FS_proto.INIT = 0;
+	FS_proto.WRITING = 1;
+	FS_proto.DONE = 2;
+
+	FS_proto.error =
+	FS_proto.onwritestart =
+	FS_proto.onprogress =
+	FS_proto.onwrite =
+	FS_proto.onabort =
+	FS_proto.onerror =
+	FS_proto.onwriteend =
+		null;
+
+	return saveAs;
+}(
+	   typeof self !== "undefined" && self
+	|| typeof window !== "undefined" && window
+	|| this.content
+));
+// `self` is undefined in Firefox for Android content script context
+// while `this` is nsIContentFrameMessageManager
+// with an attribute `content` that corresponds to the window
+
+if (typeof module !== "undefined" && module !== null) {
+  module.exports = saveAs;
+} else if ((typeof define !== "undefined" && define !== null) && (define.amd != null)) {
+  define([], function() {
+    return saveAs;
+  });
+}
diff --git a/widgets/FlyRoute/Widget.html b/widgets/FlyRoute/Widget.html
new file mode 100644
index 0000000..da8d23f
--- /dev/null
+++ b/widgets/FlyRoute/Widget.html
@@ -0,0 +1,31 @@
+<div>
+	<div class="fly-route-header">
+		<i></i> 飞行漫游
+		<div class="close-flyrouter">×</div>
+	</div>
+	<div class="fly-route-continer">
+		<div class="fly-route-control">
+			<select id="flightRoute"></select>
+			<div class="fly-route-control-btn">
+				<input type="button" id="ks" value="开始" />
+				<input type="button" id="zt" value="暂停" />
+				<input type="button" id="tz" value="停止" />
+			</div>
+		</div>
+		<div class="fly-route-new">
+			<div class="fly-route-new-top">
+				<span class="fly-text-route">定制路线:</span>
+				<input id="routeName" type="text" placeholder="请输入路线名称" />
+			</div>
+			<!--<input id="speed" type="text" placeholder="请输入飞行速度"/>m-->
+			<div class="fly-route-new-btn">
+				<input type="button" id="add" value="新增途经点" />
+				<input type="button" id="export" value="保存路线" />
+				<input type="button" id="detele" value="清除路线" />
+			</div>
+			<div>
+				<ul id="passPoint"></ul>
+			</div>
+		</div>
+	</div>
+</div>
\ No newline at end of file
diff --git a/widgets/FlyRoute/Widget.js b/widgets/FlyRoute/Widget.js
new file mode 100644
index 0000000..8ad607f
--- /dev/null
+++ b/widgets/FlyRoute/Widget.js
@@ -0,0 +1,250 @@
+///////////////////////////////////////////////////////////////////////////
+// Copyright © 2020 zhongsong. All Rights Reserved.
+// 模块描述:飞行路线
+///////////////////////////////////////////////////////////////////////////
+define(['dojo/_base/declare', 'dojo/_base/lang', 'dojo/_base/array', 'dojo/_base/html', 'dojo/topic', 'jimu/BaseWidget', './fly', './FileSaver'], function (declare, lang, array, html, topic, BaseWidget) {
+	return declare([BaseWidget], {
+		baseClass: 'jimu-widget-FlyRoute',
+		name: 'FlyRoute',
+		flightTool: null,
+		allRoutes: null,
+		flag: false,
+		startup: function startup() {
+			topic.subscribe("openFlyRoute", lang.hitch(this, this.openFlyRoute));
+			topic.subscribe("closeFlyRoute", lang.hitch(this, this.closeFlyRoute));
+			var self = this;
+			// this.inherited(arguments);
+		
+
+			$('.close-flyrouter').click(function () {
+				self.closeFlyRoute('FlyRoute')
+			});
+		},
+
+		init: function init(evt) {
+			var self = this;
+			//实例化飞行工具
+			self.flightTool = new Fly_NZC(self.map);
+
+			//获取全部路线数据
+			$.ajax({
+				url: "./widgets/FlyRoute/flyroute.json",
+				// http://sw797.com:82/blade-ycreal/flyroute/detail?id=1
+				// type: "POST",
+				dataType: "json",
+				success: function success(data) {
+					if (data.length == undefined) return;
+					// let datas = data.data;
+					self.allRoutes = data;
+					// if (data.code == 200) {
+					for (var i = 0; i < data.length; i++) {
+						$("#flightRoute").append('<option value = ' + data[i].name + ' > ' + data[i].name + ' </option>');
+					}
+					// }
+
+					
+					self._loadRoute(self.allRoutes[0].sites);
+
+					$("#flightRoute").on("change", function (e) {
+						var selectRoute = self.allRoutes.find(function (x) {
+							return x.name == $("#flightRoute").val();
+						});
+						self._loadRoute(selectRoute.sites);
+					});
+
+					//初始加载默认路线
+					//self._loadRoute(self.allRoutes[0].sites);
+				}
+			});
+
+			//开始漫游
+			$("#ks").click(function () {
+				self.flightTool.flyManager.play();
+			});
+			//暂停漫游
+			$("#zt").click(function () {
+				self.flightTool.flyManager.pause();
+			});
+			//停止漫游
+			$("#tz").click(function () {
+				self.flightTool.flyManager.stop();
+			});
+			//删除路线
+			$("#detele").click(function () {
+				self.flightTool.RouteCollection.removeAllSites();
+				$("#passPoint").empty();
+			});
+
+			//绘制路线
+			var dataArr = [],
+				id = 0;
+			$("#add").click(function () {
+				var liStr = "<li class='item'>途径点" + ($("#passPoint").children().length + 1) + "</li>";
+				var liDom = $(liStr);
+
+				var camera = self.map.scene.camera;
+
+				var cartographic = Cesium.Cartographic.fromCartesian(camera.position);
+				var lat = Cesium.Math.toDegrees(cartographic.latitude);
+				var lng = Cesium.Math.toDegrees(cartographic.longitude);
+				var height = cartographic.height;
+
+				var data = {};
+				data.id = id;
+				data.lgtd = lng;
+				data.lttd = lat;
+				data.height = height;
+				data.heading = Cesium.Math.toDegrees(camera.heading);
+				data.pitch = Cesium.Math.toDegrees(camera.pitch);
+				data.roll = Cesium.Math.toDegrees(camera.roll);
+				data.time = null;
+				dataArr.push(data);
+
+				liDom.on('click', data, function (event) {
+					console.log(event.data);
+				});
+
+				$('#passPoint').append(liDom);
+
+				self.flightTool.RouteCollection.AddSiteByView(id);
+				id++;
+			});
+
+			//导出路线
+			$("#export").click(function () {
+				for (var i = 0; i < dataArr.length - 1; i++) {
+					var a = Cesium.Cartesian3.fromDegrees(dataArr[i].lgtd, dataArr[i].lttd, dataArr[i].height);
+					var b = Cesium.Cartesian3.fromDegrees(dataArr[i + 1].lgtd, dataArr[i + 1].lttd, dataArr[i + 1].height);
+					var c = self.getSpaceDistance([a, b]);
+					dataArr[i].time = c;
+				}
+
+				var data = {
+					name: $('#routeName').val(),
+					sites: dataArr
+				};
+				var content = JSON.stringify(data);
+				var blob = new Blob([content], {
+					type: "text/plain;charset=utf-8"
+				});
+				saveAs(blob, "save.json");
+				dataArr = [];
+			});
+
+			topic.subscribe("autoRoam", lang.hitch(this, this._executeRoam));
+
+			topic.subscribe("stopflay", lang.hitch(this, this._stopFlay));
+		},
+
+		openFlyRoute: function (item) {
+			if (item == this.name) {
+				this.flag = true;
+				this.init();
+				$('.jimu-widget-FlyRoute').show();
+			}
+		},
+
+		closeFlyRoute: function (item) {
+			var self = this;
+			if (item == this.name && this.flag == true) {
+				this.flag = false;
+				$('.jimu-widget-FlyRoute').hide();
+				$('.jimu-widget-visualAngle .v-a-One').addClass('on').siblings().removeClass('on');
+				self.flightTool.RouteCollection.removeAllSites();
+				$("#passPoint").empty();
+			}
+		},
+
+		//空间两点距离计算函数
+		getSpaceDistance: function getSpaceDistance(positions) {
+			var distance = 0;
+			for (var i = 0; i < positions.length - 1; i++) {
+
+				var point1cartographic = Cesium.Cartographic.fromCartesian(positions[i]);
+				var point2cartographic = Cesium.Cartographic.fromCartesian(positions[i + 1]);
+				/**根据经纬度计算出距离**/
+				var geodesic = new Cesium.EllipsoidGeodesic();
+				geodesic.setEndPoints(point1cartographic, point2cartographic);
+				var s = geodesic.surfaceDistance;
+				//console.log(Math.sqrt(Math.pow(distance, 2) + Math.pow(endheight, 2)));
+				//返回两点之间的距离
+				s = Math.sqrt(Math.pow(s, 2) + Math.pow(point2cartographic.height - point1cartographic.height, 2));
+				distance = distance + s;
+			}
+			return (distance / 70);
+		},
+
+		_executeRoam: function _executeRoam(data) {
+			this.flightTool.flyManager.stop();
+			this.flightTool.RouteCollection.removeAllSites();
+			var selectRoute = this.allRoutes.find(function (x) {
+				return x.name == data;
+			});
+			for (var i = 0; i < selectRoute.sites.length; i++) {
+				var cartesian3 = Cesium.Cartesian3.fromDegrees(selectRoute.sites[i].lgtd, selectRoute.sites[i].lttd, selectRoute.sites[i].height);
+				var site = {
+					"ids": selectRoute.sites[i].id,
+					"position_x": cartesian3.x,
+					"position_y": cartesian3.y,
+					"position_z": cartesian3.z,
+					"pitch": Cesium.Math.toRadians(selectRoute.sites[i].pitch),
+					"heading": Cesium.Math.toRadians(selectRoute.sites[i].heading),
+					"roll": Cesium.Math.toRadians(selectRoute.sites[i].roll),
+					"time": selectRoute.sites[i].time
+				};
+				this.flightTool.allSites[i] = site;
+			}
+			this.flightTool.flyManager.play();
+		},
+
+		_stopFlay: function _stopFlay(data) {
+			if (data) {
+				this.flightTool.flyManager.stop();
+				this.flightTool.RouteCollection.removeAllSites();
+			}
+		},
+
+		_loadRoute: function _loadRoute(route) {
+			console.log(route);
+			var self = this;
+			$("#passPoint").empty();
+			self.flightTool.RouteCollection.AddRoute(route);
+			for (var j = 0; j < route.length; j++) {
+				var liStr = "<li class='item'>途径点" + (j + 1) + "</li>";
+				var liDom = $(liStr);
+				liDom.on('click', route[j], function (event) {
+					console.log(event.data);
+					var site = self.flightTool.RouteCollection.getSiteByIndex(event.data.id);
+					self.flightTool.flyManager.viewToSite(site);
+				});
+				$('#passPoint').append(liDom);
+			}
+		},
+
+		onOpen: function onOpen() {
+			//面板打开的时候触发 (when open this panel trigger)
+		},
+
+		onClose: function onClose() {
+			//面板关闭的时候触发 (when this panel is closed trigger)
+		},
+
+		onMinimize: function onMinimize() {
+			this.resize();
+		},
+
+		onMaximize: function onMaximize() {
+			this.resize();
+		},
+
+		resize: function resize() {},
+
+		destroy: function destroy() {
+			//销毁的时候触发
+			//todo
+			//do something before this func
+			this.inherited(arguments);
+		}
+
+	});
+});
\ No newline at end of file
diff --git a/widgets/FlyRoute/Widget22.js b/widgets/FlyRoute/Widget22.js
new file mode 100644
index 0000000..3062aa8
--- /dev/null
+++ b/widgets/FlyRoute/Widget22.js
@@ -0,0 +1,251 @@
+///////////////////////////////////////////////////////////////////////////
+// Copyright © 2020 zhongsong. All Rights Reserved.
+// 模块描述:飞行路线
+///////////////////////////////////////////////////////////////////////////
+define(['dojo/_base/declare', 'dojo/_base/lang', 'dojo/_base/array', 'dojo/_base/html', 'dojo/topic', 'jimu/BaseWidget', './fly', './FileSaver'], function (declare, lang, array, html, topic, BaseWidget) {
+    return declare([BaseWidget], {
+        baseClass: 'jimu-widget-FlyRoute',
+        name: 'FlyRoute',
+        flightTool: null,
+        allRoutes: null,
+        startup: function startup() {
+            var self = this;
+            // this.inherited(arguments);
+            this.init();
+
+            $('.close-flyrouter').click(function () {
+                $('.jimu-widget-FlyRoute').hide();
+                self.flightTool.RouteCollection.removeAllSites();
+                $("#passPoint").empty();
+            });
+        },
+
+        init: function init(evt) {
+            var self = this;
+            //实例化飞行工具
+            self.flightTool = new Fly_NZC(self.map);
+
+            //获取全部路线数据
+            $.ajax({
+                // url: "./widgets/FlyRoute/flyroute.json",
+                // // http://sw797.com:82/blade-ycreal/flyroute/detail?id=1
+                url: 'http://sw797.com:82/blade-ycreal/flyroute/selectFname',
+
+                type: "POST",
+                dataType: "json",
+                success: function success(data) {
+                    if (data.data.length == undefined) return;
+                    // let datas = data.data;
+                    self.allRoutes = data.data;
+                    // if (data.code == 200) {
+                    for (var i = 0; i < data.data.length; i++) {
+                        $("#flightRoute").append('<option value = ' + data.data[i].flyname + ' > ' + data.data[i].flyname + ' </option>');
+                    }
+                    // }
+
+
+                    // 初始加载默认路线
+                    // $.ajax({
+                    // 	url: 'http://sw797.com:82/blade-ycreal/flyroute/selectInfo?fnid=' + data.data[0].id,
+                    // 	type: 'post',
+                    // 	dataType: 'JSON',
+                    // 	success: function (data) {
+                    // 		self._loadRoute(data.data);
+                    // 	}
+                    // })
+                }
+            });
+
+            $("#flightRoute").on("change", function (e) {
+                var selectRoute = self.allRoutes.find(function (x) {
+                    if (x.flyname == $("#flightRoute").val()) {
+                        return x
+                    }
+                });
+
+                $.ajax({
+                    url: 'http://sw797.com:82/blade-ycreal/flyroute/selectInfo?fnid=' + selectRoute.id,
+                    type: 'post',
+                    dataType: 'JSON',
+                    success: function (data) {
+                        console.log(data);
+                        self._loadRoute(data.data);
+                    }
+                })
+
+            });
+
+            //开始漫游
+            $("#ks").click(function () {
+                self.flightTool.flyManager.play();
+            });
+            //暂停漫游
+            $("#zt").click(function () {
+                self.flightTool.flyManager.pause();
+            });
+            //停止漫游
+            $("#tz").click(function () {
+                self.flightTool.flyManager.stop();
+            });
+            //删除路线
+            $("#detele").click(function () {
+                self.flightTool.RouteCollection.removeAllSites();
+                $("#passPoint").empty();
+            });
+
+            //绘制路线
+            var dataArr = [],
+                id = 0;
+
+            $("#add").click(function () {
+                var liStr = "<li class='item'>途径点" + ($("#passPoint").children().length + 1) + "</li>";
+                var liDom = $(liStr);
+
+                var camera = self.map.scene.camera;
+
+                var cartographic = Cesium.Cartographic.fromCartesian(camera.position);
+                var lat = Cesium.Math.toDegrees(cartographic.latitude);
+                var lng = Cesium.Math.toDegrees(cartographic.longitude);
+                var height = cartographic.height;
+
+                var data = {};
+                data.id = id;
+                data.lgtd = lng;
+                data.lttd = lat;
+                data.height = height;
+                data.heading = Cesium.Math.toDegrees(camera.heading);
+                data.pitch = Cesium.Math.toDegrees(camera.pitch);
+                data.roll = Cesium.Math.toDegrees(camera.roll);
+                data.time = 3;
+                dataArr.push(data);
+
+                liDom.on('click', data, function (event) {
+                    console.log(event.data);
+                });
+
+                $('#passPoint').append(liDom);
+
+                self.flightTool.RouteCollection.AddSiteByView(id);
+                id++;
+            });
+
+            //导出路线
+            $("#export").click(function () {
+                var data = {
+                    name: $('#routeName').val(),
+                    sites: dataArr
+                };
+                var content = JSON.stringify(data);
+                var blob = new Blob([content], {
+                    type: "text/plain;charset=utf-8"
+                });
+                saveAs(blob, "save.json");
+                dataArr = [];
+            });
+
+            topic.subscribe("autoRoam", lang.hitch(this, this._executeRoam));
+
+            topic.subscribe("stopflay", lang.hitch(this, this._stopFlay));
+
+            topic.subscribe("stopflays", lang.hitch(this, this.stopFlay));
+        },
+
+        _executeRoam: function _executeRoam(data) {
+            var that = this;
+
+            this.flightTool.flyManager.stop();
+
+            this.flightTool.RouteCollection.removeAllSites();
+
+            var selectRoute = this.allRoutes.find(function (x) {
+                if (x.flyname == data) {
+                    return x
+                }
+            });
+
+            $.ajax({
+                url: 'http://sw797.com:82/blade-ycreal/flyroute/selectInfo?fnid=' + selectRoute.id,
+                type: 'post',
+                dataType: 'JSON',
+                success: function (data) {
+                    for (var i = 0; i < data.data.length; i++) {
+                        var cartesian3 = Cesium.Cartesian3.fromDegrees(data.data[i].lgtd, data.data[i].lttd, data.data[i].height + 10000000000);
+                        var site = {
+                            "ids": data.data[i].id,
+                            "position_x": cartesian3.x,
+                            "position_y": cartesian3.y,
+                            "position_z": cartesian3.z,
+                            "pitch": Cesium.Math.toRadians(data.data[i].pitch),
+                            "heading": Cesium.Math.toRadians(data.data[i].heading),
+                            "roll": Cesium.Math.toRadians(data.data[i].roll),
+                            "time": data.data[i].time
+                        };
+                        console.log(site);
+                        that.flightTool.allSites[i] = site;
+                    }
+                    that.flightTool.flyManager.play();
+
+
+                }
+            })
+
+
+        },
+
+        _stopFlay: function _stopFlay(data) {
+            if (data) {
+                this.flightTool.flyManager.stop();
+                this.flightTool.RouteCollection.removeAllSites();
+            }
+        },
+
+        stopFlay: function stopFlay() {
+            this.flightTool.flyManager.stop();
+            this.flightTool.RouteCollection.removeAllSites();
+
+        },
+
+        _loadRoute: function _loadRoute(route) {
+            console.log(route);
+            var self = this;
+            $("#passPoint").empty();
+            self.flightTool.RouteCollection.AddRoute(route);
+            for (var j = 0; j < route.length; j++) {
+                var liStr = "<li class='item'>途径点" + (j + 1) + "</li>";
+                var liDom = $(liStr);
+                liDom.on('click', route[j], function (event) {
+                    console.log(event.data);
+                    var site = self.flightTool.RouteCollection.getSiteByIndex(event.data.id);
+                    self.flightTool.flyManager.viewToSite(site);
+                });
+                $('#passPoint').append(liDom);
+            }
+        },
+
+        onOpen: function onOpen() {
+            //面板打开的时候触发 (when open this panel trigger)
+        },
+
+        onClose: function onClose() {
+            //面板关闭的时候触发 (when this panel is closed trigger)
+        },
+
+        onMinimize: function onMinimize() {
+            this.resize();
+        },
+
+        onMaximize: function onMaximize() {
+            this.resize();
+        },
+
+        resize: function resize() {},
+
+        destroy: function destroy() {
+            //销毁的时候触发
+            //todo
+            //do something before this func
+            this.inherited(arguments);
+        }
+
+    });
+});
\ No newline at end of file
diff --git a/widgets/FlyRoute/css/style.css b/widgets/FlyRoute/css/style.css
new file mode 100644
index 0000000..5ac4fb5
--- /dev/null
+++ b/widgets/FlyRoute/css/style.css
@@ -0,0 +1,152 @@
+.jimu-widget-FlyRoute {
+	width: 100%;
+	height: 100%;
+	overflow-x: hidden;
+	background-color: rgba(48, 48, 48, 0.7);
+	display: none;
+	font-size: 14px;
+	border: 1px solid rgb(69, 154, 251);
+	border-radius: 5px;
+	color: rgb(238, 235, 235);
+}
+
+/* 头部 */
+.jimu-widget-FlyRoute .fly-route-header {
+	position: relative;
+	width: 100%;
+	height: 40px;
+	line-height: 40px;
+	font-size: 20px;
+	border-bottom: 1px solid rgb(69, 154, 251);
+}
+
+.jimu-widget-FlyRoute .fly-route-header i {
+	display: inline-block;
+	margin-left: 6px;
+	vertical-align: middle;
+	width: 20px;
+	height: 20px;
+	background: url(../../../images/toolbox.png ) no-repeat 0 -176px;
+	background-size: 20px;	
+}
+
+.jimu-widget-FlyRoute .fly-route-header .close-flyrouter {
+	position: absolute;
+	top: 50%;
+	right: 8px;
+	font-size: 38px;
+	font-weight: 400;
+	height: 28px;
+	line-height: 28px;
+	cursor: pointer;
+	transform: translateY(-50%);
+}
+
+
+
+.jimu-widget-FlyRoute input,
+.jimu-widget-FlyRoute select {
+	border: 0;
+}
+
+.jimu-widget-FlyRoute .fly-route-continer {
+	/* margin: 10px 8px; */
+	position: absolute;
+	top: 51px;
+	left: 10px;
+	right: 10px;
+	bottom: 10px;
+}
+
+/* 选择框,或者说选择飞行路线 */
+.jimu-widget-FlyRoute .fly-route-control #flightRoute {
+	width: 100%;
+	height: 30px;
+}
+
+/* 控制按钮 */
+.jimu-widget-FlyRoute .fly-route-continer .fly-route-control-btn,
+.jimu-widget-FlyRoute .fly-route-continer .fly-route-new-btn {
+	margin-top: 10px;
+	width: 100%;
+}
+
+.jimu-widget-FlyRoute .fly-route-continer .fly-route-control-btn input,
+.jimu-widget-FlyRoute .fly-route-continer .fly-route-new-btn input {
+	margin: 0 1%;
+	width: 30%;
+	height: 30px;
+	color: #fff;
+	background: rgb(31, 76, 112);
+	border: 1px solid rgb(69, 154, 251);
+	border-radius: 4px;
+}
+
+
+.jimu-widget-FlyRoute .fly-route-continer .fly-route-new {
+	position: absolute;
+	top: 80px;
+	bottom: 0px;
+	width: 100%;
+}
+
+.jimu-widget-FlyRoute .fly-route-continer .fly-route-new-top {
+	height: 24px;
+	line-height: 24px;
+	font-size: 18px;
+}
+
+.jimu-widget-FlyRoute .fly-route-continer .fly-route-new-top span {
+	margin: 0;
+	display: inline-block;
+	width: 90px;
+	height: 24px;
+}
+
+.jimu-widget-FlyRoute .fly-route-continer .fly-route-new-top input { 
+	margin: 0;
+	width: 140px;
+	height: 24px;
+	vertical-align: top;
+	border: none;
+}
+
+.jimu-widget-FlyRoute .fly-route-continer .fly-route-new>div:nth-child(3) {
+	position: absolute;
+	top: 64px;
+	left: 0;
+	bottom: 0;
+	width: 100%;
+	height: auto;
+
+}
+
+#passPoint,
+#passPoint li {
+	margin: 0;
+	padding: 0;
+}
+
+#passPoint {
+	height: 100%;
+	list-style: none;
+	overflow: auto;
+}
+
+#passPoint li {
+	margin: 10px 40px;
+}
+
+.item {
+	background: #C0C0C0;
+	border-radius: 5px;
+	height: 20px;
+	padding-left: 5px;
+	color: white;
+	font-family: "微软雅黑";
+	text-align: center;
+	margin-bottom: 5px;
+}
+
+
+
diff --git a/widgets/FlyRoute/fly.js b/widgets/FlyRoute/fly.js
new file mode 100644
index 0000000..eb3c9f8
--- /dev/null
+++ b/widgets/FlyRoute/fly.js
@@ -0,0 +1,423 @@
+function newSite(x,y,z,h,p,time,ids){
+	if(x!=null&&y!=null&&z!=null&&h!=null&&p!=null&&time!=null&&ids!=null){
+		this.position_x=x;
+		this.position_y=y;
+		this.position_z=z;
+		this.pitch=p;
+		this.heading=h;
+		this.time=time;
+		this.ids=ids;
+	}else{
+		return false;
+	}
+}
+function Fly_NZC(viewer){
+	this.viewer=viewer;
+	this.scene=viewer.scene;
+	this.entities=viewer.entities;
+	//全部飞行站点数组
+	this.allSites=[];
+	var that =this;
+	this.checkIds=function(ids){
+        for(var i=0;i<that.allSites.length+1;i++){
+            if(i==that.allSites.length){
+                return false;
+            	break;
+            }
+	    	if(that.allSites[i].ids==ids){
+	    	    return i;
+	    	    break;
+	    	}
+	    }
+	};
+	this.RouteCollection={
+	 	//线颜色
+	 	//LineColor:Cesium.Color.WHITE,
+	 	//站点和路线显隐是否开启
+	    point_show:true,
+	    line_show:true,
+	 	//站点图片路径
+	 	img_path:"widgets/FlyRoute/images/location4.png",
+	 	 //飞行路线颜色
+	   /* setLineColor:function(){
+	    	Cesium.Color.WHITE,
+	    },*/
+	    AddRoute:function(Route){
+	    	this.deleteEntities();
+	    	that.allSites=[];
+	    	for (var i = 0; i < Route.length; i++) {
+	    		let cartesian3 = Cesium.Cartesian3.fromDegrees(Route[i].lgtd, Route[i].lttd, Route[i].height);
+	    		let site = {"ids":Route[i].id,"position_x":cartesian3.x,"position_y":cartesian3.y,"position_z":cartesian3.z,
+	    					"pitch":Cesium.Math.toRadians(Route[i].pitch),"heading":Cesium.Math.toRadians(Route[i].heading),
+	    					"roll":Cesium.Math.toRadians(Route[i].roll),"time":Route[i].time};
+	    		that.allSites[i]=site;
+	    	}
+            this.controlEntities();
+
+	    },
+	    //设置点图片
+	    setPointImg:function(path){
+	    	
+	    	this.img_path=path;
+	    	this.controlEntities();
+	        
+	    },
+	    //mod=0为设置点的可见,1为设置线的可见,2为控制点和线的可见
+	    setVisible:function(mod,bool){
+	        if(mod===0){
+		        this.point_show=bool;
+		    }if(mod===1){
+		        this.line_show=bool;
+		    }if(mod===2){
+		        this.point_show=bool;
+		        this.line_show=bool;
+		    }
+		    this.controlEntities();
+	    	
+	    },
+	    //通过传入站点类添加站点
+	    AddSite:function(newSite){
+	    	//判断id是否重复
+	    	var bool=that.checkIds(newSite.ids);
+	    	if(bool){
+                return  false;
+	    	}else{
+		    	var Site = {};
+			    Site.position_x=newSite.position_x;
+			    Site.position_y=newSite.position_y; 
+			    Site.position_z=newSite.position_z;
+			    Site.heading=newSite.heading;
+			    Site.pitch=newSite.pitch;
+			    //Site.roll=camera.roll;
+			    Site.time=newSite.time;
+			    Site.ids=newSite.ids;
+	            that.allSites.push(Site);
+	            this.controlEntities();
+	            return  true;
+	        }
+	    },
+	 	//添加当前视角为站点需要传入id
+	    AddSiteByView:function (ids) {
+	    	//判断id是否重复
+	    	var bool=that.checkIds(ids);
+	    	if(bool){
+                return  false;
+	    	}else{
+	    		try{
+		        	var position=that.scene.camera.position;
+			        //获取当前相机位置参数(飞行用)
+			    	var Site = {};
+			        Site.position_x=position.x;
+			        Site.position_y=position.y; 
+			        Site.position_z=position.z;
+			        Site.heading=that.scene.camera.heading;
+			        Site.pitch=that.scene.camera.pitch;
+			        Site.roll=that.scene.camera.roll;
+			        Site.time=3;
+			        Site.ids=ids;
+			        //添加到站点数组
+			        that.allSites.push(Site);
+			        this.controlEntities();
+			        console.log(that.allSites);
+			        return  true;
+			    }catch(e){
+			        return  false;
+			    }
+
+	    	}        
+	    },
+	    //根据索引获取站点信息
+	    getSiteByIndex:function (index) {
+	    	return that.allSites[index];
+	    },
+	    deleteEntities:function(){
+	    	//50000+为线id
+	    	for(var i=0;i<that.allSites.length;i++){
+	            that.entities.removeById(that.allSites[i].ids);
+	        }
+	        for(var i=1;i<500000;i++){
+	            var ids=parseInt(50000+i);
+	            var entities_del=that.entities.getById(ids);
+	            if(entities_del){
+	                    that.entities.remove(entities_del);
+	            }else{
+	                break;
+	            }
+		   
+	        }
+	    },
+	    controlEntities:function(){
+	    	var position_1,position_2,x1,x2,y1,y2,z1,z2,point_1_cartographic,point_2_cartographic;
+	    	//添加和删除站点,更改颜色或图片后,先清空entities,然后重新添加。
+	        this.deleteEntities();
+	        //添加显示的站点
+	       	var length=that.allSites.length;
+	       	if(this.point_show==true){
+	         	for(var j=0;j<length;j++){
+		            that.entities.add({
+		                position : new Cesium.Cartesian3(that.allSites[j].position_x,that.allSites[j].position_y,that.allSites[j].position_z),
+		                billboard :{
+		                    image :this.img_path,
+		                    width:30,
+		                    height:40,
+		                },
+		                //name : 10000+j,
+		                id:that.allSites[j].ids
+		            });
+		        }
+	       	}
+	       	//添加显示的线
+	       	if(this.line_show==true){
+	            for(var j=1;j<length;j++){
+	            	//将笛卡尔坐标转为经纬度坐标,用于绘制线
+	            	position_1=new Cesium.Cartesian3(that.allSites[j].position_x,that.allSites[j].position_y,that.allSites[j].position_z)
+		            point_1_cartographic = Cesium.Cartographic.fromCartesian(position_1);
+				    x1 = Cesium.Math.toDegrees(point_1_cartographic.longitude);
+				    y1 = Cesium.Math.toDegrees(point_1_cartographic.latitude);
+				    z1 = point_1_cartographic.height;
+
+				    position_2=new Cesium.Cartesian3(that.allSites[j-1].position_x,that.allSites[j-1].position_y,that.allSites[j-1].position_z)
+		            point_2_cartographic = Cesium.Cartographic.fromCartesian(position_2);
+				    x2 = Cesium.Math.toDegrees(point_2_cartographic.longitude);
+				    y2 = Cesium.Math.toDegrees(point_2_cartographic.latitude);
+				    z2 = point_2_cartographic.height;
+	                that.entities.add({
+	                  	id:50000+j,
+	                   // name : drowallStops.length,
+	                    polyline : {
+	                        positions : Cesium.Cartesian3.fromDegreesArrayHeights([x1,y1,z1,x2,y2,z2]),
+	                        width : 5,
+	                        material : Cesium.Color.WHITE
+	                    }
+	                });
+	                     
+	            }  
+	        }
+	       //如果关闭显示了站点和飞行路线,添加的新站点和飞行路线将先不显示
+	       if(this.line_show==false){
+	       	    for(var j=1;j<length;j++){
+	       	    	//将笛卡尔坐标转为经纬度坐标,用于绘制线
+	            	position_1=new Cesium.Cartesian3(that.allSites[j].position_x,that.allSites[j].position_y,that.allSites[j].position_z)
+		            point_1_cartographic = Cesium.Cartographic.fromCartesian(position_1);
+				    x1 = Cesium.Math.toDegrees(point_1_cartographic.longitude);
+				    y1 = Cesium.Math.toDegrees(point_1_cartographic.latitude);
+				    z1 = point_1_cartographic.height;
+
+				    position_2=new Cesium.Cartesian3(that.allSites[j-1].position_x,that.allSites[j-1].position_y,that.allSites[j-1].position_z)
+		            point_2_cartographic = Cesium.Cartographic.fromCartesian(position_2);
+				    x2 = Cesium.Math.toDegrees(point_2_cartographic.longitude);
+				    y2 = Cesium.Math.toDegrees(point_2_cartographic.latitude);
+				    z2 = point_2_cartographic.height;
+	                that.entities.add({
+	                  	id:50000+j,
+	                  	show:false,
+	                   // name : drowallStops.length,
+	                    polyline : {
+	                        positions : Cesium.Cartesian3.fromDegreesArrayHeights([x1,y1,z1,x2,y2,z2]),
+	                        width : 5,
+	                        material :  Cesium.Color.WHITE
+	                    }
+	                });
+	                     
+	            }  
+
+	       }
+	       if(this.point_show==false){
+	         	for(var j=0;j<length;j++){
+			       	that.entities.add({
+				        position : new Cesium.Cartesian3(that.allSites[j].position_x,that.allSites[j].position_y,that.allSites[j].position_z),
+				        billboard :{
+				            image :this.img_path,
+				            width:30,
+				            height:40,
+				        },
+				        show:false,
+				        //name : 10000+j,
+				        id:that.allSites[j].ids
+				    });
+				}   
+	        }
+	    },
+	    removeAllSites:function(){
+	    	this.deleteEntities();
+	    	that.allSites=[];
+	    	
+	    },
+	    removeSiteById:function(ids){
+	    	var id=that.checkIds(ids)
+	    	if(id){
+	    		this.deleteEntities();
+	    		that.allSites.splice(id,1);
+	    		this.controlEntities();
+	    	    
+	    	}else{
+	    		return false
+	    	}
+	    	
+	    }
+	  
+	 };
+	this.l=0;
+	this.b=0;
+	//用于判断执行的时暂停还是停止
+	this.play_bool=true;
+	var x,y,z,p,h;
+	this.setInterval_fly=null;
+    this.setcamera=function(){
+    	 //设置俯仰角
+    	   var set=that.allSites[that.l].time*50
+		    that.viewer.camera.setView({
+		        orientation: {
+		            heading :viewer.scene.camera.heading+h/set, 
+		            pitch :viewer.scene.camera.pitch+p/set,
+		            roll : 0.0                             
+		        }
+		    });
+		    //move移动相机
+		    that.viewer.camera.move(new Cesium.Cartesian3(x,y,z),1/set);
+			that.b--;
+		    if(that.b<=0){
+		    	that.l++;
+		        clearInterval(that.setInterval_fly);
+		        that.setInterval_fly=null;
+		        that.Interval();
+		       // that.b=0;
+		    }
+    };
+	this.Interval=function(){
+		var l=that.l;
+		if(that.play_bool){
+            that.b=that.allSites[l].time*50
+		}else{
+			that.play_bool=true;
+		}
+	    if(that.allSites[l+1]){
+		    x=that.allSites[l+1].position_x-that.allSites[l].position_x;
+			y=that.allSites[l+1].position_y-that.allSites[l].position_y;
+			z=that.allSites[l+1].position_z-that.allSites[l].position_z;
+			p=that.allSites[l+1].pitch-that.allSites[l].pitch;
+			h=that.allSites[l+1].heading-that.allSites[l].heading;
+			
+			var tem = Cesium.Math.toDegrees(that.allSites[l+1].heading) - Cesium.Math.toDegrees(that.allSites[l].heading);
+			if(Math.abs(tem)>180){
+				if(tem>=0){
+					tem = 360 - tem;
+				}
+				else{
+					tem = 360 + tem;
+				}
+				h = Cesium.Math.toRadians(tem);
+			}
+			//that.b=that.allSites[l].time*20
+		    that.setInterval_fly=setInterval(that.setcamera,20);
+		}else{
+			that.play_bool=true;
+			that.l=0;
+			that.scene.screenSpaceCameraController.enableRotate = true;
+	        that.scene.screenSpaceCameraController.enableTranslate = true;
+	        that.scene.screenSpaceCameraController.enableZoom = true;
+	        that.scene.screenSpaceCameraController.enableTilt = true;
+	        that.scene.screenSpaceCameraController.enableLook = true;
+		}
+			
+	};
+
+	this.flyManager={
+		//用于储存暂停时的位置
+		Site_pause:{},
+	 	play:function(){
+	 		//如果之前点的时停止重新开始飞行
+	 		if(that.allSites.length>1){
+		 			that.scene.screenSpaceCameraController.enableRotate = false;
+	                that.scene.screenSpaceCameraController.enableTranslate = false;
+	                that.scene.screenSpaceCameraController.enableZoom = false;
+	                that.scene.screenSpaceCameraController.enableTilt = false;
+	                that.scene.screenSpaceCameraController.enableLook = false;
+	 		    if(that.play_bool){
+	                //设置初始点
+	                 that.scene.camera.setView({
+	                    destination : new Cesium.Cartesian3(that.allSites[that.l].position_x,that.allSites[that.l].position_y,that.allSites[that.l].position_z),
+	                    orientation : {
+	                        heading : that.allSites[that.l].heading,
+	                        pitch : that.allSites[that.l].pitch,
+	                        roll : that.allSites[that.l].roll
+	                    }
+	                });
+	                that.Interval();
+	 		    }else{
+		 			//如果之前是暂停,继续飞行
+		 			that.scene.camera.setView({
+		                    //将经度、纬度、高度的坐标转换为笛卡尔坐标
+		               destination : new Cesium.Cartesian3(this.Site_pause.position_x,this.Site_pause.position_y,this.Site_pause.position_z),
+		               orientation : {
+		                    heading : this.Site_pause.heading,
+		                    pitch : this.Site_pause.pitch,
+		                    roll : this.Site_pause.roll
+		                }
+		            });
+		            that.Interval();
+	 		    }
+	 	    }
+	 		
+	 	},
+	    stop:function(){
+	    	if( that.setInterval_fly!=null){
+	    		clearInterval(that.setInterval_fly);
+		        that.setInterval_fly=null;
+	    	}
+	    	that.l=0;
+		    that.play_bool=true;
+		    that.scene.screenSpaceCameraController.enableRotate = true;
+	        that.scene.screenSpaceCameraController.enableTranslate = true;
+	        that.scene.screenSpaceCameraController.enableZoom = true;
+	        that.scene.screenSpaceCameraController.enableTilt = true;
+	        that.scene.screenSpaceCameraController.enableLook = true;
+	    },
+	    pause:function(){
+    
+	    	if( that.setInterval_fly!=null){
+	    		clearInterval(that.setInterval_fly);
+		        that.setInterval_fly=null;
+		        that.play_bool=false;
+	    	}
+	    	//获取暂停时的camera数据
+	    	var position=that.scene.camera.position;
+		    this.Site_pause.position_x=position.x;
+		    this.Site_pause.position_y=position.y; 
+		    this.Site_pause.position_z=position.z;
+		    this.Site_pause.heading=that.scene.camera.heading;
+		    this.Site_pause.pitch=that.scene.camera.pitch;
+		    this.Site_pause.roll=that.scene.camera.roll;
+	    	
+
+	    	that.scene.screenSpaceCameraController.enableRotate = true;
+	        that.scene.screenSpaceCameraController.enableTranslate = true;
+	        that.scene.screenSpaceCameraController.enableZoom = true;
+	        that.scene.screenSpaceCameraController.enableTilt = true;
+	        that.scene.screenSpaceCameraController.enableLook = true;
+
+	    },
+	    SetStartSite:function(ids){
+	    	var bool=that.checkIds(ids);
+	    	if(bool){
+                that.l=bool;
+                return true;
+	    	}else{
+	    		return false;
+	    	}
+
+	    },
+	    viewToSite:function(site){
+	    	that.scene.camera.setView({
+	           destination : new Cesium.Cartesian3(site.position_x,site.position_y,site.position_z),
+	           orientation : {
+	               heading : site.heading,
+	               pitch : site.pitch,
+	               roll : site.roll
+	            }
+	      	}); 
+
+	    }
+
+	};
+}
diff --git a/widgets/FlyRoute/flyroute copy.json b/widgets/FlyRoute/flyroute copy.json
new file mode 100644
index 0000000..96d3e33
--- /dev/null
+++ b/widgets/FlyRoute/flyroute copy.json
@@ -0,0 +1,2944 @@
+[{
+	"name": "赣江",
+	"sites": [{
+			"heading": 357.9869912980161,
+			"height": 285238.39185432903,
+			"id": 0,
+			"lgtd": 114.91004196727931,
+			"lttd": 24.677900204135966,
+			"pitch": -69.47450266926576,
+			"roll": 0,
+			"time": 5.02166835523097
+		},
+		{
+			"heading": 358.3983181909315,
+			"height": 15670.549364763312,
+			"id": 1,
+			"lgtd": 114.93855921905534,
+			"lttd": 25.826829979636443,
+			"pitch": -69.18797317927171,
+			"roll": 0,
+			"time": 5.029988586357309
+		},
+		{
+			"heading": 92.95584066531514,
+			"height": 6367.210204024799,
+			"id": 2,
+			"lgtd": 114.89560506668838,
+			"lttd": 25.870238312531498,
+			"pitch": -28.97838661983592,
+			"roll": 0,
+			"time": 3.8901895642801354
+		},
+		{
+			"heading": 61.15691342861295,
+			"height": 6342.7767892647535,
+			"id": 3,
+			"lgtd": 114.9781007701422,
+			"lttd": 25.84411963204967,
+			"pitch": -28.842976484719344,
+			"roll": 0,
+			"time": 6.249779367858405
+		},
+		{
+			"heading": 73.28212299225694,
+			"height": 6567.791671720333,
+			"id": 4,
+			"lgtd": 115.102992803494,
+			"lttd": 25.90202115868043,
+			"pitch": -30.061682684100695,
+			"roll": 0,
+			"time": 8.227272183089719
+		},
+		{
+			"heading": 76.27937991369087,
+			"height": 4613.376983526163,
+			"id": 5,
+			"lgtd": 115.28408018558122,
+			"lttd": 25.93154000797094,
+			"pitch": -21.529794258193547,
+			"roll": 0,
+			"time": 7.142885045663216
+		},
+		{
+			"heading": 96.64117259611888,
+			"height": 3838.771544852294,
+			"id": 6,
+			"lgtd": 115.4373411669313,
+			"lttd": 25.974612476240278,
+			"pitch": -19.218312128415874,
+			"roll": 0,
+			"time": 4.468718597647603
+		},
+		{
+			"heading": 140.45819653197063,
+			"height": 3848.9484663913026,
+			"id": 7,
+			"lgtd": 115.53786615961117,
+			"lttd": 25.97809562246397,
+			"pitch": -19.21828494876229,
+			"roll": 0,
+			"time": 1.5409874434879025
+		},
+		{
+			"heading": 162.8891904942394,
+			"height": 3870.6646722629666,
+			"id": 8,
+			"lgtd": 115.56962663358955,
+			"lttd": 25.96555551748831,
+			"pitch": -19.35374891022856,
+			"roll": 0,
+			"time": 5.581919231221835
+		},
+		{
+			"heading": 164.49443874067398,
+			"height": 3131.437149425037,
+			"id": 9,
+			"lgtd": 115.60060578362105,
+			"lttd": 25.85627602861158,
+			"pitch": -20.286291689619162,
+			"roll": 0,
+			"time": 4.3758609836018305
+		},
+		{
+			"heading": 159.9968221842971,
+			"height": 2484.6773721715435,
+			"id": 10,
+			"lgtd": 115.62903558627471,
+			"lttd": 25.77168150913509,
+			"pitch": -20.811177810274728,
+			"roll": 0,
+			"time": 2.243395143479559
+		},
+		{
+			"heading": 157.74643416545905,
+			"height": 1823.0280998069793,
+			"id": 11,
+			"lgtd": 115.63959601662373,
+			"lttd": 25.727674926749163,
+			"pitch": -17.279911854540302,
+			"roll": 0,
+			"time": 3.7947130830529283
+		},
+		{
+			"heading": 127.51739913179264,
+			"height": 2120.1866716863587,
+			"id": 12,
+			"lgtd": 115.67227820704443,
+			"lttd": 25.656776125326605,
+			"pitch": -19.99002788388036,
+			"roll": 0,
+			"time": 2.4904044435619834
+		},
+		{
+			"heading": 119.71083911868338,
+			"height": 1731.9027634421363,
+			"id": 13,
+			"lgtd": 115.71742957837668,
+			"lttd": 25.627235226449205,
+			"pitch": -17.817591431287667,
+			"roll": 0,
+			"time": 10
+		}
+	]
+},
+{
+	"name": "八镜台",
+	"sites": [{
+			"lgtd": 114.93632219161731,
+			"lttd": 25.884363046928456,
+			"height": 397.3549750735983,
+			"heading": 176.53130022399196,
+			"pitch": -20.195309100411933,
+			"roll": 0,
+			"time": 4.00017582946881,
+			"id": 0
+		},
+		{
+			"lgtd": 114.93669815695004,
+			"lttd": 25.87736996707935,
+			"height": 209.51782816275954,
+			"heading": 176.53146434331168,
+			"pitch": -20.188501749348774,
+			"roll": 0,
+			"time": 2.3495012248642735,
+			"id": 1
+		},
+		{
+			"lgtd": 114.93672551699986,
+			"lttd": 25.876186580047623,
+			"height": 155.50093645229936,
+			"heading": 163.97333674800646,
+			"pitch": -12.374859140040556,
+			"roll": 0,
+			"time": 3.1796099436930123,
+			"id": 2
+		},
+		{
+			"lgtd": 114.9378905468734,
+			"lttd": 25.874812307454988,
+			"height": 144.52538030594587,
+			"heading": 163.9737603881679,
+			"pitch": -12.374000655640202,
+			"roll": 0,
+			"time": 7.704939711291355,
+			"id": 3
+		},
+		{
+			"lgtd": 114.94041419173405,
+			"lttd": 25.87128479111843,
+			"height": 144.52538036275655,
+			"heading": 163.97470269912773,
+			"pitch": -12.374000655116106,
+			"roll": 0,
+			"time": 7.68299807783365,
+			"id": 4
+		},
+		{
+			"lgtd": 114.94322577396598,
+			"lttd": 25.867953240475146,
+			"height": 144.52538047824055,
+			"heading": 163.9756985506932,
+			"pitch": -12.374000653851681,
+			"roll": 0,
+			"time": 2.804448449001058,
+			"id": 5
+		},
+		{
+			"lgtd": 114.94481869582083,
+			"lttd": 25.8674297715574,
+			"height": 150.79986280668527,
+			"heading": 243.36693081092622,
+			"pitch": -15.08232209326529,
+			"roll": 0,
+			"time": 4.000132411107316,
+			"id": 6
+		},
+		{
+			"lgtd": 114.94929059996423,
+			"lttd": 25.86527096044927,
+			"height": 359.6244359910488,
+			"heading": 301.5405783431852,
+			"pitch": -19.777180664623604,
+			"roll": 0,
+			"time": 10,
+			"id": 7
+		}
+	]
+},
+{
+	"name": "坝上水文站",
+	"sites": [{
+			"lgtd": 114.94372004024437,
+			"lttd": 25.814496016608736,
+			"height": 152.1385886212811,
+			"heading": 171.62268076366593,
+			"pitch": -20.821395505810557,
+			"roll": 0,
+			"time": 5.274116167031268,
+			"id": 0
+		},
+		{
+			"lgtd": 114.94379121294962,
+			"lttd": 25.81411284882032,
+			"height": 128.33647623565048,
+			"heading": 174.27562258918636,
+			"pitch": -9.977704264969915,
+			"roll": 0,
+			"time": 2.6779225906739925,
+			"id": 1
+		},
+		{
+			"lgtd": 114.94403440290071,
+			"lttd": 25.814060307949635,
+			"height": 128.02777932304889,
+			"heading": 219.3752126425377,
+			"pitch": -9.435536222768903,
+			"roll": 0,
+			"time": 2.250747319598679,
+			"id": 2
+		},
+		{
+			"lgtd": 114.94416579563192,
+			"lttd": 25.813912591312786,
+			"height": 127.91592456586659,
+			"heading": 242.322948560078,
+			"pitch": -9.164452182623634,
+			"roll": 0,
+			"time": 2.4015226346137206,
+			"id": 3
+		},
+		{
+			"lgtd": 114.94427076427499,
+			"lttd": 25.813734683426567,
+			"height": 129.45040067471564,
+			"heading": 275.3517463330477,
+			"pitch": -11.197623707196884,
+			"roll": 0,
+			"time": 2.8113310130556295,
+			"id": 4
+		},
+		{
+			"lgtd": 114.94419389206749,
+			"lttd": 25.813511581501864,
+			"height": 125.42301620077342,
+			"heading": 305.3296052682719,
+			"pitch": -5.9114859427753,
+			"roll": 0,
+			"time": 4.584714986833571,
+			"id": 5
+		},
+		{
+			"lgtd": 114.94381850362754,
+			"lttd": 25.813326934420438,
+			"height": 127.3525069495663,
+			"heading": 355.0715199205544,
+			"pitch": -6.453712954557787,
+			"roll": 0,
+			"time": 10,
+			"id": 6
+		}
+	]
+},
+{
+	"name": "崇义水文站",
+	"sites": [{
+			"lgtd": 114.30258647664289,
+			"lttd": 25.70779523225455,
+			"height": 289.7728772405535,
+			"heading": 265.1811528242236,
+			"pitch": -19.788608217189477,
+			"roll": 0,
+			"time": 5.0001634079729245,
+			"id": 0
+		},
+		{
+			"lgtd": 114.30202928159461,
+			"lttd": 25.707631675182558,
+			"height": 286.5412409985438,
+			"heading": 265.84413883126643,
+			"pitch": -11.520021534669155,
+			"roll": 0,
+			"time": 4.363588508031886,
+			"id": 1
+		},
+		{
+			"lgtd": 114.30193013766947,
+			"lttd": 25.70761030387582,
+			"height": 282.56793879065663,
+			"heading": 266.2420324495833,
+			"pitch": -7.589207891114995,
+			"roll": 0,
+			"time": 10.636837779916819,
+			"id": 2
+		},
+		{
+			"lgtd": 114.30166492160885,
+			"lttd": 25.707607189739786,
+			"height": 285.26492497697473,
+			"heading": 268.89482845338017,
+			"pitch": -6.233574913842162,
+			"roll": 0,
+			"time": 10,
+			"id": 3
+		}
+	]
+},
+{
+	"name": "大余县城",
+	"sites": [{
+			"lgtd": 114.34966615563265,
+			"lttd": 25.396331628610024,
+			"height": 539.0935115199536,
+			"heading": 359.9999666796307,
+			"pitch": -89.99933739086066,
+			"roll": 0,
+			"time": 13.155703427547536,
+			"id": 0
+		},
+		{
+			"lgtd": 114.35015717846075,
+			"lttd": 25.395649669292652,
+			"height": 258.0936256777495,
+			"heading": 327.2415565763987,
+			"pitch": -27.704831864756816,
+			"roll": 0,
+			"time": 5.282227882238639,
+			"id": 1
+		},
+		{
+			"lgtd": 114.35016746833097,
+			"lttd": 25.396703167877604,
+			"height": 240.8744057705626,
+			"heading": 358.62087134211174,
+			"pitch": -20.3923923179059,
+			"roll": 0,
+			"time": 7.706765819339092,
+			"id": 2
+		},
+		{
+			"lgtd": 114.35140668332548,
+			"lttd": 25.395629929422213,
+			"height": 230.5387396560982,
+			"heading": 345.17312696637913,
+			"pitch": -15.329919866041763,
+			"roll": 0,
+			"time": 10,
+			"id": 3
+		}
+	]
+},
+{
+	"name": "纷坑水文站",
+	"sites": [{
+			"lgtd": 115.66722429639151,
+			"lttd": 26.12816706281331,
+			"height": 192.2988574448973,
+			"heading": 286.74952321638847,
+			"pitch": -20.57035005408261,
+			"roll": 0,
+			"time": 7.283557338703615,
+			"id": 0
+		},
+		{
+			"lgtd": 115.66609267621104,
+			"lttd": 26.128597369583737,
+			"height": 215.98918257374316,
+			"heading": 286.7490290870554,
+			"pitch": -28.44713509062393,
+			"roll": 0,
+			"time": 2.509724172970018,
+			"id": 1
+		},
+		{
+			"lgtd": 115.66576471297856,
+			"lttd": 26.128356261446854,
+			"height": 217.04171227104962,
+			"heading": 359.1626777592782,
+			"pitch": -29.009691315759746,
+			"roll": 0,
+			"time": 5.271377245678449,
+			"id": 2
+		},
+		{
+			"lgtd": 115.66514948128216,
+			"lttd": 26.127884623340623,
+			"height": 264.2624555034563,
+			"heading": 35.024475787593595,
+			"pitch": -30.13534960251204,
+			"roll": 0,
+			"time": 10,
+			"id": 3
+		}
+	]
+},
+{
+	"name": "凤岗镇",
+	"sites": [{
+			"lgtd": 114.80007268341755,
+			"lttd": 25.817766673846712,
+			"height": 178.01866194140166,
+			"heading": 12.069238945041983,
+			"pitch": -35.10075686428325,
+			"roll": 0,
+			"time": 5.5142113132281985,
+			"id": 0
+		},
+		{
+			"lgtd": 114.79995272495454,
+			"lttd": 25.816404110213096,
+			"height": 151.79396241344512,
+			"heading": 358.4619534637597,
+			"pitch": -16.264018559688225,
+			"roll": 0,
+			"time": 15.52911008409377,
+			"id": 1
+		},
+		{
+			"lgtd": 114.79846071267916,
+			"lttd": 25.81274967111022,
+			"height": 186.67369175329804,
+			"heading": 0.35782773026671433,
+			"pitch": -34.403539508531836,
+			"roll": 0,
+			"time": 5.023768880528232,
+			"id": 2
+		},
+		{
+			"lgtd": 114.79731933600519,
+			"lttd": 25.813467808761615,
+			"height": 168.96972319763154,
+			"heading": 69.14862202459868,
+			"pitch": -26.81034223924228,
+			"roll": 0,
+			"time": 4.29347929286742,
+			"id": 3
+		},
+		{
+			"lgtd": 114.79841478743315,
+			"lttd": 25.813784040004194,
+			"height": 134.8768430389464,
+			"heading": 69.14902801039894,
+			"pitch": -24.418916406623893,
+			"roll": 0,
+			"time": 10,
+			"id": 4
+		}
+	]
+},
+{
+	"name": "赣县大田乡",
+	"sites": [{
+			"lgtd": 115.12496179011247,
+			"lttd": 25.85579346608933,
+			"height": 229.51705904956907,
+			"heading": 32.83781019946513,
+			"pitch": -28.023785850303653,
+			"roll": 0,
+			"time": 18.429655262162733,
+			"id": 0
+		},
+		{
+			"lgtd": 115.126543154047,
+			"lttd": 25.85811559693487,
+			"height": 169.33737858571112,
+			"heading": 36.45918952567723,
+			"pitch": -28.07503198123363,
+			"roll": 0,
+			"time": 4.541589606857851,
+			"id": 1
+		},
+		{
+			"lgtd": 115.12640121920369,
+			"lttd": 25.858792461461658,
+			"height": 170.52455805521458,
+			"heading": 124.21774830925875,
+			"pitch": -29.05940250930085,
+			"roll": 0,
+			"time": 10.028952459782772,
+			"id": 2
+		},
+		{
+			"lgtd": 115.1253631779223,
+			"lttd": 25.85982164906902,
+			"height": 229.36403377074748,
+			"heading": 130.07936451834775,
+			"pitch": -34.4041410923797,
+			"roll": 0,
+			"time": 9.200995369959099,
+			"id": 3
+		},
+		{
+			"lgtd": 115.12685364127903,
+			"lttd": 25.860024559810775,
+			"height": 192.8136820839718,
+			"heading": 182.14898011912297,
+			"pitch": -25.403894480693594,
+			"roll": 0,
+			"time": 10,
+			"id": 4
+		}
+	]
+},
+{
+	"name": "赣县江口镇",
+	"sites": [{
+			"lgtd": 115.13637433220978,
+			"lttd": 25.958323356491107,
+			"height": 172.40847238712013,
+			"heading": 339.1377589883968,
+			"pitch": -15.329155771865812,
+			"roll": 0,
+			"time": 8.382310677263757,
+			"id": 0
+		},
+		{
+			"lgtd": 115.13616027643968,
+			"lttd": 25.960002154091374,
+			"height": 172.408472484909,
+			"heading": 339.13766528662205,
+			"pitch": -15.329155772066102,
+			"roll": 0,
+			"time": 11.29295061477329,
+			"id": 1
+		},
+		{
+			"lgtd": 115.13858552864548,
+			"lttd": 25.95940369121483,
+			"height": 143.0075052920729,
+			"heading": 312.4145889984807,
+			"pitch": -6.4698256023845175,
+			"roll": 0,
+			"time": 10,
+			"id": 2
+		}
+	]
+},
+{
+	"name": "赣县南塘镇",
+	"sites": [{
+			"lgtd": 115.25562178163838,
+			"lttd": 26.08323604179894,
+			"height": 155.59786297846586,
+			"heading": 324.3096884404521,
+			"pitch": -4.1183616755492665,
+			"roll": 0,
+			"time": 10.991480630050686,
+			"id": 0
+		},
+		{
+			"lgtd": 115.25455087816268,
+			"lttd": 26.084597795843617,
+			"height": 157.26248834561557,
+			"heading": 325.1712865451021,
+			"pitch": -4.5385695904241885,
+			"roll": 0,
+			"time": 3.58466457648971,
+			"id": 1
+		},
+		{
+			"lgtd": 115.25412211109692,
+			"lttd": 26.084334294391347,
+			"height": 178.3375921351835,
+			"heading": 23.274546292560817,
+			"pitch": -27.038942935085657,
+			"roll": 0,
+			"time": 6.492637726517662,
+			"id": 2
+		},
+		{
+			"lgtd": 115.25307023370755,
+			"lttd": 26.084062118937922,
+			"height": 184.7138319807127,
+			"heading": 23.274083782585926,
+			"pitch": -27.039058088415008,
+			"roll": 0,
+			"time": 8.861818744901237,
+			"id": 3
+		},
+		{
+			"lgtd": 115.25257676399103,
+			"lttd": 26.082808331619823,
+			"height": 206.54388030432165,
+			"heading": 18.698539972458125,
+			"pitch": -24.227258363032135,
+			"roll": 0,
+			"time": 10,
+			"id": 4
+		}
+	]
+},
+{
+	"name": "赣县水位镇",
+	"sites": [{
+			"lgtd": 115.02853623749633,
+			"lttd": 25.867015856632037,
+			"height": 158.66377801820636,
+			"heading": 231.6440340191032,
+			"pitch": -15.891875709697672,
+			"roll": 0,
+			"time": 1.4688151758591683,
+			"id": 0
+		},
+		{
+			"lgtd": 115.02842593601434,
+			"lttd": 25.866925584033073,
+			"height": 151.32605249993503,
+			"heading": 215.43708934469453,
+			"pitch": 5.907371380351975,
+			"roll": 0,
+			"time": 2.5424118569288474,
+			"id": 1
+		},
+		{
+			"lgtd": 115.02829428334717,
+			"lttd": 25.866695577375477,
+			"height": 150.97098165284842,
+			"heading": 215.4370319068567,
+			"pitch": 5.907115303197415,
+			"roll": 0,
+			"time": 0.9993630115959917,
+			"id": 2
+		},
+		{
+			"lgtd": 115.0283255182584,
+			"lttd": 25.866669988677845,
+			"height": 151.47256699763238,
+			"heading": 232.67842484426012,
+			"pitch": -26.99836695712762,
+			"roll": 0,
+			"time": 3.2677332884898354,
+			"id": 3
+		},
+		{
+			"lgtd": 115.02830412898206,
+			"lttd": 25.866338149010552,
+			"height": 152.61439197137952,
+			"heading": 332.161174132698,
+			"pitch": -30.092111296212078,
+			"roll": 0,
+			"time": 4.67195401686294,
+			"id": 4
+		},
+		{
+			"lgtd": 115.02850295407897,
+			"lttd": 25.865953220033784,
+			"height": 176.46071881148964,
+			"heading": 335.0922953567881,
+			"pitch": -30.654980628803994,
+			"roll": 0,
+			"time": 10,
+			"id": 5
+		}
+	]
+},
+{
+	"name": "赣州水位站",
+	"sites": [{
+			"lgtd": 115.00142251305105,
+			"lttd": 25.84743497121056,
+			"height": 202.8412357950583,
+			"heading": 165.47908310661157,
+			"pitch": -17.720386800803524,
+			"roll": 0,
+			"time": 9.823539272996955,
+			"id": 0
+		},
+		{
+			"lgtd": 115.00180381368311,
+			"lttd": 25.84652733176521,
+			"height": 181.75440417602658,
+			"heading": 165.4792493403518,
+			"pitch": -17.71942211520036,
+			"roll": 0,
+			"time": 6.425928215536739,
+			"id": 1
+		},
+		{
+			"lgtd": 115.00111261436008,
+			"lttd": 25.846518904252648,
+			"height": 201.4239173689857,
+			"heading": 117.03067214368701,
+			"pitch": -20.954247288482122,
+			"roll": 0,
+			"time": 36.6014843127864,
+			"id": 2
+		},
+		{
+			"lgtd": 115.00013693527251,
+			"lttd": 25.84318368661727,
+			"height": 345.4642769722268,
+			"heading": 38.7543847918454,
+			"pitch": -26.86305754828676,
+			"roll": 0,
+			"time": 10,
+			"id": 3
+		}
+	]
+},
+{
+	"name": "古陂水文站",
+	"sites": [{
+			"lgtd": 115.12101691380788,
+			"lttd": 25.34117550832571,
+			"height": 223.52110724151134,
+			"heading": 168.54083912586975,
+			"pitch": -29.84884199649172,
+			"roll": 0,
+			"time": 2.493672027255901,
+			"id": 0
+		},
+		{
+			"lgtd": 115.12105991098862,
+			"lttd": 25.340938401736125,
+			"height": 214.40390394814312,
+			"heading": 168.5408575289588,
+			"pitch": -29.84860189600438,
+			"roll": 0,
+			"time": 1.4787222696360556,
+			"id": 1
+		},
+		{
+			"lgtd": 115.12095996681369,
+			"lttd": 25.340818766146338,
+			"height": 212.88252812437713,
+			"heading": 76.64426302853025,
+			"pitch": -21.97360731980899,
+			"roll": 0,
+			"time": 1.3217476095305944,
+			"id": 2
+		},
+		{
+			"lgtd": 115.12102187308008,
+			"lttd": 25.340698830909307,
+			"height": 215.58274987339973,
+			"heading": 12.333944696978314,
+			"pitch": -27.31738443400326,
+			"roll": 0,
+			"time": 2.4801684627901937,
+			"id": 3
+		},
+		{
+			"lgtd": 115.12090756279697,
+			"lttd": 25.340552153680424,
+			"height": 235.3574487855658,
+			"heading": 11.989068185754824,
+			"pitch": -37.7238252765945,
+			"roll": 0,
+			"time": 10,
+			"id": 4
+		}
+	]
+},
+{
+	"name": "翰林桥水文站",
+	"sites": [{
+			"lgtd": 115.1944579976088,
+			"lttd": 26.04231791839762,
+			"height": 178.48859430942684,
+			"heading": 143.75408761648296,
+			"pitch": -13.398850339167696,
+			"roll": 0,
+			"time": 4.9646563840068145,
+			"id": 0
+		},
+		{
+			"lgtd": 115.19479690642339,
+			"lttd": 26.04192338214365,
+			"height": 174.51251500379294,
+			"heading": 157.71975247536773,
+			"pitch": -13.82028578796374,
+			"roll": 0,
+			"time": 2.908836593219344,
+			"id": 1
+		},
+		{
+			"lgtd": 115.19495132236567,
+			"lttd": 26.04216211961495,
+			"height": 185.3398771993816,
+			"heading": 192.20257888911786,
+			"pitch": -28.164195914499892,
+			"roll": 0,
+			"time": 5.130930519841143,
+			"id": 2
+		},
+		{
+			"lgtd": 115.19528162065686,
+			"lttd": 26.04173953012875,
+			"height": 185.06840224005282,
+			"heading": 300.2136039391015,
+			"pitch": -27.461073183963478,
+			"roll": 0,
+			"time": 7.246084225033803,
+			"id": 3
+		},
+		{
+			"lgtd": 115.19647383051406,
+			"lttd": 26.041320224888933,
+			"height": 242.8613519128412,
+			"heading": 300.2139504228993,
+			"pitch": -35.46127244070565,
+			"roll": 0,
+			"time": 10,
+			"id": 4
+		}
+	]
+},
+{
+	"name": "葫芦阁水文站",
+	"sites": [{
+			"lgtd": 115.62696127512052,
+			"lttd": 25.755079615621927,
+			"height": 176.23390349466354,
+			"heading": 6.207049147157783,
+			"pitch": -5.486562988589256,
+			"roll": 0,
+			"time": 6.470847387927079,
+			"id": 0
+		},
+		{
+			"lgtd": 115.62690217982149,
+			"lttd": 25.755735992508598,
+			"height": 176.2339035756886,
+			"heading": 6.2070196058293226,
+			"pitch": -5.486562988683843,
+			"roll": 0,
+			"time": 11.856527639627945,
+			"id": 1
+		},
+		{
+			"lgtd": 115.62591981984156,
+			"lttd": 25.756555115849533,
+			"height": 181.42591064609587,
+			"heading": 66.89624789517433,
+			"pitch": -2.9556404927511153,
+			"roll": 0,
+			"time": 6.357181963238897,
+			"id": 2
+		},
+		{
+			"lgtd": 115.62662590357866,
+			"lttd": 25.756673300295006,
+			"height": 179.91938969306648,
+			"heading": 63.96552024123362,
+			"pitch": -10.970864442323602,
+			"roll": 0,
+			"time": 9.712017534105645,
+			"id": 3
+		},
+		{
+			"lgtd": 115.62575160488542,
+			"lttd": 25.75723385397522,
+			"height": 202.90220474544913,
+			"heading": 120.34555369136801,
+			"pitch": -19.54648674000856,
+			"roll": 0,
+			"time": 10,
+			"id": 4
+		}
+	]
+},
+{
+	"name": "会昌县城水位站",
+	"sites": [{
+			"lgtd": 115.77750075489652,
+			"lttd": 25.6047419301853,
+			"height": 202.52284797560424,
+			"heading": 301.37923984077986,
+			"pitch": -36.20506255749648,
+			"roll": 0,
+			"time": 6.000515904503275,
+			"id": 0
+		},
+		{
+			"lgtd": 115.7780840090755,
+			"lttd": 25.60443705780922,
+			"height": 208.92786719556898,
+			"heading": 301.37949189873393,
+			"pitch": -36.20519362352467,
+			"roll": 0,
+			"time": 3.2441286322242466,
+			"id": 1
+		},
+		{
+			"lgtd": 115.77790641589151,
+			"lttd": 25.604148362339565,
+			"height": 208.68674522824585,
+			"heading": 330.0001048047637,
+			"pitch": -26.502375319678833,
+			"roll": 0,
+			"time": 8.445608951114911,
+			"id": 2
+		},
+		{
+			"lgtd": 115.77711273123232,
+			"lttd": 25.603674113147534,
+			"height": 204.33509656321257,
+			"heading": -8.481580077199778,
+			"pitch": -23.100725421329386,
+			"roll": 0,
+			"time": 10,
+			"id": 3
+		}
+	]
+},
+{
+	"name": "居龙滩水文站",
+	"sites": [{
+			"lgtd": 115.11445678929658,
+			"lttd": 25.816684842984767,
+			"height": 169.8708429010585,
+			"heading": 17.241774367374447,
+			"pitch": -15.610269281142864,
+			"roll": 0,
+			"time": 5.775769265696361,
+			"id": 0
+		},
+		{
+			"lgtd": 115.11443656156781,
+			"lttd": 25.817567448448795,
+			"height": 175.90615169797093,
+			"heading": 83.79353528515011,
+			"pitch": -25.59411136389113,
+			"roll": 0,
+			"time": 5.791918249396247,
+			"id": 1
+		},
+		{
+			"lgtd": 115.11439833789505,
+			"lttd": 25.81835089017299,
+			"height": 175.90615173615515,
+			"heading": 83.79351863546083,
+			"pitch": -25.594111363637495,
+			"roll": 0,
+			"time": 6.087473514299251,
+			"id": 2
+		},
+		{
+			"lgtd": 115.11468453724521,
+			"lttd": 25.818905867788658,
+			"height": 210.42808594647795,
+			"heading": 151.80452332155915,
+			"pitch": -21.65662181783324,
+			"roll": 0,
+			"time": 10,
+			"id": 3
+		}
+	]
+},
+{
+	"name": "龙华镇",
+	"sites": [{
+			"lgtd": 114.6820466095103,
+			"lttd": 25.82648911281504,
+			"height": 303.2619874915108,
+			"heading": 1.9765066689386803,
+			"pitch": -89.50089979037493,
+			"roll": 0,
+			"time": 9.52697216043599,
+			"id": 0
+		},
+		{
+			"lgtd": 114.68086352166017,
+			"lttd": 25.826413923264845,
+			"height": 194.83215134963393,
+			"heading": 76.8035774654311,
+			"pitch": -25.451465746130424,
+			"roll": 0,
+			"time": 6.407507370354565,
+			"id": 1
+		},
+		{
+			"lgtd": 114.68176178471252,
+			"lttd": 25.826525585328046,
+			"height": 136.08552421070635,
+			"heading": 79.5625890870022,
+			"pitch": -8.61864482419577,
+			"roll": 0,
+			"time": 2.4000900009016926,
+			"id": 2
+		},
+		{
+			"lgtd": 114.68216229063358,
+			"lttd": 25.826574683186244,
+			"height": 134.61207736842334,
+			"heading": 79.56276356684067,
+			"pitch": -8.618281392611976,
+			"roll": 0,
+			"time": 9.047718984223385,
+			"id": 3
+		},
+		{
+			"lgtd": 114.68119717609855,
+			"lttd": 25.827385456186338,
+			"height": 211.05998431518674,
+			"heading": 126.28648104079357,
+			"pitch": -36.68345954652192,
+			"roll": 0,
+			"time": 10,
+			"id": 4
+		}
+	]
+},
+{
+	"name": "龙南县水文站",
+	"sites": [{
+			"lgtd": 114.78773232571734,
+			"lttd": 24.922244028148867,
+			"height": 300.6446006093174,
+			"heading": 210.38299248037902,
+			"pitch": -17.562746609629784,
+			"roll": 0,
+			"time": 8.120211486312222,
+			"id": 0
+		},
+		{
+			"lgtd": 114.78653173452048,
+			"lttd": 24.920588491956263,
+			"height": 252.13771173078567,
+			"heading": 210.38248658483593,
+			"pitch": -17.560788598609818,
+			"roll": 0,
+			"time": 5.550633968669166,
+			"id": 1
+		},
+		{
+			"lgtd": 114.78671515546581,
+			"lttd": 24.919211756481584,
+			"height": 250.49727659486234,
+			"heading": 296.8242224918408,
+			"pitch": -16.508160159829004,
+			"roll": 0,
+			"time": 3.1666540918732062,
+			"id": 2
+		},
+		{
+			"lgtd": 114.78595621080036,
+			"lttd": 24.919489418736674,
+			"height": 229.9803884141147,
+			"heading": 302.847971453149,
+			"pitch": -14.272751164531828,
+			"roll": 0,
+			"time": 4.000101773931636,
+			"id": 3
+		},
+		{
+			"lgtd": 114.78572154910773,
+			"lttd": 24.919483600111622,
+			"height": 229.2527518486604,
+			"heading": 18.52771828829403,
+			"pitch": -20.32532256416674,
+			"roll": 0,
+			"time": 3.0000382619763726,
+			"id": 4
+		},
+		{
+			"lgtd": 114.78564774035812,
+			"lttd": 24.919556684378286,
+			"height": 229.60612409655005,
+			"heading": 69.38593212658785,
+			"pitch": -21.904268728828626,
+			"roll": 0,
+			"time": 3.000158061900316,
+			"id": 5
+		},
+		{
+			"lgtd": 114.78569073452731,
+			"lttd": 24.91968143224833,
+			"height": 230.3463125154376,
+			"heading": 137.94911321202136,
+			"pitch": -25.193738341995797,
+			"roll": 0,
+			"time": 3.000108831371254,
+			"id": 6
+		},
+		{
+			"lgtd": 114.7858146110428,
+			"lttd": 24.919688703542647,
+			"height": 230.3723478987813,
+			"heading": 204.77655209936958,
+			"pitch": -25.32531719355066,
+			"roll": 0,
+			"time": 3.0002392362387513,
+			"id": 7
+		},
+		{
+			"lgtd": 114.78586728321436,
+			"lttd": 24.91960879603369,
+			"height": 230.30523873027414,
+			"heading": 269.0002965683585,
+			"pitch": -24.93058060964124,
+			"roll": 0,
+			"time": 5.000180489468717,
+			"id": 8
+		},
+		{
+			"lgtd": 114.78632935342222,
+			"lttd": 24.919612000617132,
+			"height": 237.54306906368583,
+			"heading": 270.21553465429196,
+			"pitch": -15.85210180163017,
+			"roll": 0,
+			"time": 10,
+			"id": 9
+		}
+	]
+},
+{
+	"name": "麻州水文站",
+	"sites": [{
+			"lgtd": 115.78263045039758,
+			"lttd": 25.51409914157903,
+			"height": 235.26212729793042,
+			"heading": 0.8615456967437455,
+			"pitch": -29.921874007616513,
+			"roll": 0,
+			"time": 5.683772575152789,
+			"id": 0
+		},
+		{
+			"lgtd": 115.78270788069601,
+			"lttd": 25.514637953634196,
+			"height": 223.12136257160455,
+			"heading": 0.8615790492833251,
+			"pitch": -29.92135812961622,
+			"roll": 0,
+			"time": 3.3541881306705235,
+			"id": 1
+		},
+		{
+			"lgtd": 115.7830479231797,
+			"lttd": 25.51478725715019,
+			"height": 224.31923939473927,
+			"heading": -60.0686220723705,
+			"pitch": -23.171480895449463,
+			"roll": 0,
+			"time": 5.364948837335464,
+			"id": 2
+		},
+		{
+			"lgtd": 115.78304424019198,
+			"lttd": 25.515330201266078,
+			"height": 250.8642701106146,
+			"heading": -158.51689634902291,
+			"pitch": -26.359231454837783,
+			"roll": 0,
+			"time": 10,
+			"id": 3
+		}
+	]
+},
+{
+	"name": "庙子潭水文站",
+	"sites": [{
+			"lgtd": 116.21647273121017,
+			"lttd": 26.16151850913054,
+			"height": 271.5169715452939,
+			"heading": 34.99979156561369,
+			"pitch": -26.33282771418849,
+			"roll": 0,
+			"time": 3.782314437417472,
+			"id": 0
+		},
+		{
+			"lgtd": 116.21702243541384,
+			"lttd": 26.162055432035007,
+			"height": 246.71419356763363,
+			"heading": 35.00003393516098,
+			"pitch": -26.332104897242836,
+			"roll": 0,
+			"time": 1.9120874537586168,
+			"id": 1
+		},
+		{
+			"lgtd": 116.21764417318618,
+			"lttd": 26.1617609909796595,
+			"height": 256.4488629633561,
+			"heading": -50.1036536099736,
+			"pitch": -25.347937048487367,
+			"roll": 0,
+			"time": 4.1073355497190955,
+			"id": 2
+		}
+	]
+},
+{
+	"name": "南河浮桥",
+	"sites": [{
+			"lgtd": 114.95322800632586,
+			"lttd": 25.818628194843217,
+			"height": 288.6175379753113,
+			"heading": 347.8830058767785,
+			"pitch": -18.47539437160819,
+			"roll": 0,
+			"time": 2.606115683240029,
+			"id": 0
+		},
+		{
+			"lgtd": 114.95237595540277,
+			"lttd": 25.821746451765964,
+			"height": 208.87260178104043,
+			"heading": 347.88263475092884,
+			"pitch": -18.472633923912724,
+			"roll": 0,
+			"time": 1.3126418000050528,
+			"id": 1
+		},
+		{
+			"lgtd": 114.95273366914542,
+			"lttd": 25.823372030123192,
+			"height": 209.53241439070553,
+			"heading": 336.623768954747,
+			"pitch": -18.57679868499521,
+			"roll": 0,
+			"time": 4.017247621953331,
+			"id": 2
+		},
+		{
+			"lgtd": 114.95027438141373,
+			"lttd": 25.827935080005332,
+			"height": 209.53241438791156,
+			"heading": 336.62262318102074,
+			"pitch": -18.576798685079424,
+			"roll": 0,
+			"time": 2.772819577409756,
+			"id": 3
+		},
+		{
+			"lgtd": 114.94835188779585,
+			"lttd": 25.830977957373115,
+			"height": 212.58045542612672,
+			"heading": 327.0949210900234,
+			"pitch": -18.88929300616182,
+			"roll": 0,
+			"time": 6.264156330665874,
+			"id": 4
+		},
+		{
+			"lgtd": 114.94261420837145,
+			"lttd": 25.83696057229861,
+			"height": 181.00002172309905,
+			"heading": 321.3182482995087,
+			"pitch": -13.889373125933034,
+			"roll": 0,
+			"time": 3.2475116216516025,
+			"id": 5
+		},
+		{
+			"lgtd": 114.93963303934262,
+			"lttd": 25.840060582432955,
+			"height": 181.00002179294825,
+			"heading": 321.31701035805764,
+			"pitch": -13.88937312611678,
+			"roll": 0,
+			"time": 1.9619906982393156,
+			"id": 6
+		},
+		{
+			"lgtd": 114.93790118262001,
+			"lttd": 25.84198502256517,
+			"height": 175.5322432341054,
+			"heading": 305.7265230446616,
+			"pitch": -13.368546877264947,
+			"roll": 0,
+			"time": 1.1236095226753002,
+			"id": 7
+		},
+		{
+			"lgtd": 114.93670093105612,
+			"lttd": 25.842892382085807,
+			"height": 192.06210924685,
+			"heading": 294.1781980131391,
+			"pitch": -15.035190151070267,
+			"roll": 0,
+			"time": 1.5334609756239241,
+			"id": 8
+		},
+		{
+			"lgtd": 114.93482421621393,
+			"lttd": 25.843837186520975,
+			"height": 186.5253164852038,
+			"heading": 280.7531618041194,
+			"pitch": -14.306034277415991,
+			"roll": 0,
+			"time": 1.6312198710124373,
+			"id": 9
+		},
+		{
+			"lgtd": 114.93253608066149,
+			"lttd": 25.843818305412324,
+			"height": 186.52531652804464,
+			"heading": 280.7521643342173,
+			"pitch": -14.306034277342434,
+			"roll": 0,
+			"time": 2.322194655527177,
+			"id": 10
+		},
+		{
+			"lgtd": 114.92927868736605,
+			"lttd": 25.8438434186912,
+			"height": 186.52531663142145,
+			"heading": 280.7506112049571,
+			"pitch": -14.30603427725923,
+			"roll": 0,
+			"time": 1.659089442801079,
+			"id": 11
+		},
+		{
+			"lgtd": 114.9269783784879,
+			"lttd": 25.844161666327466,
+			"height": 186.52531663887203,
+			"heading": 280.74958970687635,
+			"pitch": -14.306034277184752,
+			"roll": 0,
+			"time": 5.686112897784295,
+			"id": 12
+		},
+		{
+			"lgtd": 114.9190938074162,
+			"lttd": 25.844902298526723,
+			"height": 274.89522343408316,
+			"heading": 97.71487752005235,
+			"pitch": -18.16247583579178,
+			"roll": 0,
+			"time": 10,
+			"id": 13
+		}
+	]
+},
+{
+	"name": "宁都县固村",
+	"sites": [{
+			"lgtd": 116.14957479956982,
+			"lttd": 26.236454908224946,
+			"height": 224.47342311777174,
+			"heading": 18.090191708985802,
+			"pitch": -11.817802224633269,
+			"roll": 0,
+			"time": 6.804933646385035,
+			"id": 0
+		},
+		{
+			"lgtd": 116.14960558968626,
+			"lttd": 26.237146884060277,
+			"height": 224.47342314571142,
+			"heading": 18.090176492763952,
+			"pitch": -11.817802224706682,
+			"roll": 0,
+			"time": 2.856853188015929,
+			"id": 1
+		},
+		{
+			"lgtd": 116.14954059575902,
+			"lttd": 26.23743170515005,
+			"height": 224.19078397657722,
+			"heading": 58.262548942945955,
+			"pitch": -10.97405145990112,
+			"roll": 0,
+			"time": 11.81000279180394,
+			"id": 2
+		},
+		{
+			"lgtd": 116.15083329468472,
+			"lttd": 26.23774119385131,
+			"height": 216.90756210312247,
+			"heading": 58.26314965436107,
+			"pitch": -10.973570149342834,
+			"roll": 0,
+			"time": 1.8567457813444785,
+			"id": 3
+		},
+		{
+			"lgtd": 116.15096225905499,
+			"lttd": 26.237601839483307,
+			"height": 222.90700560435653,
+			"heading": 15.332172186250904,
+			"pitch": -25.176675299941337,
+			"roll": 0,
+			"time": 5.857670706741917,
+			"id": 4
+		},
+		{
+			"lgtd": 116.15150356056759,
+			"lttd": 26.237268612755763,
+			"height": 233.22146254498512,
+			"heading": 349.4703425282293,
+			"pitch": -25.176945947869072,
+			"roll": 0,
+			"time": 7.2694828073387745,
+			"id": 5
+		},
+		{
+			"lgtd": 116.15177482673091,
+			"lttd": 26.236578014224914,
+			"height": 244.99015930481255,
+			"heading": 349.47046245139796,
+			"pitch": -25.177176858777457,
+			"roll": 0,
+			"time": 10,
+			"id": 6
+		}
+	]
+},
+{
+	"name": "宁都县水文站",
+	"sites": [{
+			"lgtd": 116.01989518099366,
+			"lttd": 26.477126111124136,
+			"height": 224.7146815834567,
+			"heading": 332.2769389390469,
+			"pitch": -22.69171202921933,
+			"roll": 0,
+			"time": 2.1433933698176446,
+			"id": 0
+		},
+		{
+			"lgtd": 116.01949969528181,
+			"lttd": 26.477749386016885,
+			"height": 223.44452235847712,
+			"heading": 342.7557604039734,
+			"pitch": -21.942607669482555,
+			"roll": 0,
+			"time": 4.7229574716275575,
+			"id": 1
+		},
+		{
+			"lgtd": 116.01900462092861,
+			"lttd": 26.479261718084697,
+			"height": 235.514822345227,
+			"heading": 129.4615087233991,
+			"pitch": -25.581507894356818,
+			"roll": 0,
+			"time": 5.8338631117329145,
+			"id": 2
+		},
+		{
+			"lgtd": 116.02103628846703,
+			"lttd": 26.478566827869596,
+			"height": 220.90936974436045,
+			"heading": 130.7888699963274,
+			"pitch": -17.448374100454558,
+			"roll": 0,
+			"time": 5.530682629810045,
+			"id": 3
+		},
+		{
+			"lgtd": 116.02160286965228,
+			"lttd": 26.477140337463606,
+			"height": 228.06938179116696,
+			"heading": 302.96303565540893,
+			"pitch": -22.585094969748084,
+			"roll": 0,
+			"time": 4.870948268636392,
+			"id": 4
+		},
+		{
+			"lgtd": 116.02250112619932,
+			"lttd": 26.476457871996715,
+			"height": 366.3005909109488,
+			"heading": 307.9276860784654,
+			"pitch": -36.71159614499272,
+			"roll": 0,
+			"time": 10,
+			"id": 5
+		}
+	]
+},
+{
+	"name": "蟠龙镇",
+	"sites": [{
+			"lgtd": 114.85538729263605,
+			"lttd": 25.819152321002186,
+			"height": 145.04655735194683,
+			"heading": 353.2125224991989,
+			"pitch": -13.779851031043052,
+			"roll": 0,
+			"time": 16.95268736173187,
+			"id": 0
+		},
+		{
+			"lgtd": 114.8554397357147,
+			"lttd": 25.823416184335535,
+			"height": 145.04655746556818,
+			"heading": 353.21266251027953,
+			"pitch": -13.779851031498922,
+			"roll": 0,
+			"time": 3.145050430931384,
+			"id": 1
+		},
+		{
+			"lgtd": 114.85580819782204,
+			"lttd": 25.823058068798368,
+			"height": 214.348337569274,
+			"heading": 325.1093747357455,
+			"pitch": -51.74861792562686,
+			"roll": 0,
+			"time": 4.242381156003644,
+			"id": 2
+		},
+		{
+			"lgtd": 114.85680837546059,
+			"lttd": 25.822485263445675,
+			"height": 214.34833765216172,
+			"heading": 325.10981040817506,
+			"pitch": -51.74861792573023,
+			"roll": 0,
+			"time": 10,
+			"id": 3
+		}
+	]
+},
+{
+	"name": "全南县城",
+	"sites": [{
+			"lgtd": 114.52811220376968,
+			"lttd": 24.729359421587624,
+			"height": 290.9123850874603,
+			"heading": 203.03638920717069,
+			"pitch": -16.77399159041174,
+			"roll": 0,
+			"time": 12.762668823767426,
+			"id": 0
+		},
+		{
+			"lgtd": 114.52792534516134,
+			"lttd": 24.728071912825996,
+			"height": 288.5393641302362,
+			"heading": 198.38112802487882,
+			"pitch": -31.960403496350047,
+			"roll": 0,
+			"time": 4.9395150981080755,
+			"id": 1
+		},
+		{
+			"lgtd": 114.52818570493105,
+			"lttd": 24.727635702371046,
+			"height": 297.5027337372303,
+			"heading": 290.1053748647945,
+			"pitch": -42.36664388602275,
+			"roll": 0,
+			"time": 21.70630817930591,
+			"id": 2
+		},
+		{
+			"lgtd": 114.52993739459802,
+			"lttd": 24.72611324778923,
+			"height": 316.85324113443494,
+			"heading": 300.62334896301115,
+			"pitch": -23.94576446729269,
+			"roll": 0,
+			"time": 10,
+			"id": 3
+		}
+	]
+},
+{
+	"name": "瑞金水文站",
+	"sites": [{
+			"lgtd": 116.03626368245652,
+			"lttd": 25.86747565139365,
+			"height": 239.2244676295668,
+			"heading": 180.92934989292988,
+			"pitch": -5.766374296827806,
+			"roll": 0,
+			"time": 1.5592234456101863,
+			"id": 0
+		},
+		{
+			"lgtd": 116.03625622307125,
+			"lttd": 25.86760686464742,
+			"height": 239.12984926998615,
+			"heading": 180.23969146626175,
+			"pitch": -35.29757994804706,
+			"roll": 0,
+			"time": 3.1687336697521964,
+			"id": 1
+		},
+		{
+			"lgtd": 116.03591494959468,
+			"lttd": 25.86752096443439,
+			"height": 233.7745523257181,
+			"heading": 126.61885291668584,
+			"pitch": -20.110176866425093,
+			"roll": 0,
+			"time": 2.767394327175075,
+			"id": 2
+		},
+		{
+			"lgtd": 116.0361739678541,
+			"lttd": 25.86766578103464,
+			"height": 236.71141478419304,
+			"heading": 180.44803657874334,
+			"pitch": -8.502776647836356,
+			"roll": 0,
+			"time": 3.3710063467101254,
+			"id": 3
+		},
+		{
+			"lgtd": 116.03655514178999,
+			"lttd": 25.86765838747039,
+			"height": 236.71141481678933,
+			"heading": 180.44815160785546,
+			"pitch": -8.50277664764819,
+			"roll": 0,
+			"time": 2.888244442466265,
+			"id": 4
+		},
+		{
+			"lgtd": 116.03682445819383,
+			"lttd": 25.867693858991984,
+			"height": 244.8036428624764,
+			"heading": 225.63549106197684,
+			"pitch": -27.206085940490482,
+			"roll": 0,
+			"time": 10,
+			"id": 5
+		}
+	]
+},
+{
+	"name": "上犹县城",
+	"sites": [{
+			"lgtd": 114.54730093689116,
+			"lttd": 25.786585029330617,
+			"height": 216.08523117750883,
+			"heading": 88.52685834723589,
+			"pitch": 5.058346584195334,
+			"roll": 0,
+			"time": 6.1894263131443354,
+			"id": 0
+		},
+		{
+			"lgtd": 114.548683827511,
+			"lttd": 25.78650547605166,
+			"height": 216.08523119892925,
+			"heading": 88.52745993120587,
+			"pitch": 5.058346584237029,
+			"roll": 0,
+			"time": 2.344633860719293,
+			"id": 1
+		},
+		{
+			"lgtd": 114.54920756048409,
+			"lttd": 25.78650175186694,
+			"height": 219.6039342628792,
+			"heading": 74.04492888216218,
+			"pitch": 3.298728266674175,
+			"roll": 0,
+			"time": 10.161099062866501,
+			"id": 2
+		},
+		{
+			"lgtd": 114.55108505210401,
+			"lttd": 25.787640097707094,
+			"height": 196.75692986510694,
+			"heading": 74.04574563150305,
+			"pitch": 3.3005808680167377,
+			"roll": 0,
+			"time": 10.505760825971333,
+			"id": 3
+		},
+		{
+			"lgtd": 114.55123251718251,
+			"lttd": 25.78556730720479,
+			"height": 242.8169838245958,
+			"heading": 27.149258091555456,
+			"pitch": 1.328998154367838,
+			"roll": 0,
+			"time": 13.185560038424331,
+			"id": 4
+		},
+		{
+			"lgtd": 114.55403187691645,
+			"lttd": 25.786394435879508,
+			"height": 261.31490494590253,
+			"heading": -70.566908793699,
+			"pitch": -2.18670545881362,
+			"roll": 0,
+			"time": 10,
+			"id": 5
+		}
+	]
+},
+{
+	"name": "胜前水文站",
+	"sites": [{
+			"lgtd": 115.19770347047682,
+			"lttd": 24.86722234070339,
+			"height": 275.4359977580607,
+			"heading": 205.28769386750326,
+			"pitch": -25.64535007137451,
+			"roll": 0,
+			"time": 1.9301212733943396,
+			"id": 0
+		},
+		{
+			"lgtd": 115.19760123118067,
+			"lttd": 24.86706923301927,
+			"height": 266.4291126355529,
+			"heading": 205.2876509421129,
+			"pitch": -25.645172074631034,
+			"roll": 0,
+			"time": 5.144486206350736,
+			"id": 1
+		},
+		{
+			"lgtd": 115.19705261622406,
+			"lttd": 24.866906802765858,
+			"height": 265.83600770588964,
+			"heading": 95.43201098678797,
+			"pitch": -24.942049954443206,
+			"roll": 0,
+			"time": 5.738345729196323,
+			"id": 2
+		},
+		{
+			"lgtd": 115.19736784201898,
+			"lttd": 24.866400173593536,
+			"height": 261.5659513473511,
+			"heading": 348.49859994539923,
+			"pitch": -36.75451647973753,
+			"roll": 0,
+			"time": 1.7804478332107851,
+			"id": 3
+		},
+		{
+			"lgtd": 115.19738901653943,
+			"lttd": 24.866340187238784,
+			"height": 262.65016043372452,
+			"heading": 346.947087887822,
+			"pitch": 6.698507095528214,
+			"roll": 0,
+			"time": 1.807250407789342,
+			"id": 4
+		},
+		{
+			"lgtd": 115.19739755496279,
+			"lttd": 24.86652341494551,
+			"height": 264.23617804050446,
+			"heading": 358.6703393475338,
+			"pitch": 1.4955775496126194,
+			"roll": 0,
+			"time": 10,
+			"id": 5
+		}
+	]
+},
+{
+	"name": "石城水文站",
+	"sites": [{
+			"lgtd": 116.3589572712654,
+			"lttd": 26.35986866012123,
+			"height": 264.4585257349536,
+			"heading": 300.51681760017846,
+			"pitch": -6.401641669795169,
+			"roll": 0,
+			"time": 11.36983354829399,
+			"id": 0
+		},
+		{
+			"lgtd": 116.36022484997841,
+			"lttd": 26.35972115907059,
+			"height": 282.7768778419122,
+			"heading": 289.4828976565087,
+			"pitch": -22.43324979558014,
+			"roll": 0,
+			"time": 14.500778076717621,
+			"id": 1
+		},
+		{
+			"lgtd": 116.36087041912735,
+			"lttd": 26.361063565660707,
+			"height": 260.2189964847639,
+			"heading": 323.7935291383674,
+			"pitch": -16.38607547936033,
+			"roll": 0,
+			"time": 9.409329704218088,
+			"id": 2
+		},
+		{
+			"lgtd": 116.36114302131092,
+			"lttd": 26.361987292943464,
+			"height": 267.2573977736756,
+			"heading": 222.93158122090668,
+			"pitch": -22.29232207371993,
+			"roll": 0,
+			"time": 5.152002850758515,
+			"id": 3
+		},
+		{
+			"lgtd": 116.36067288553502,
+			"lttd": 26.361679891754985,
+			"height": 261.2064681639895,
+			"heading": 223.276200049309,
+			"pitch": -26.088787609785882,
+			"roll": 0,
+			"time": 10,
+			"id": 4
+		}
+	]
+},
+{
+	"name": "水背水文站",
+	"sites": [{
+			"lgtd": 115.67819061148703,
+			"lttd": 24.797352313753546,
+			"height": 308.7977258646861,
+			"heading": 356.0338167081802,
+			"pitch": -43.70437397775342,
+			"roll": 0,
+			"time": 8.804763343267515,
+			"id": 0
+		},
+		{
+			"lgtd": 115.67800612954967,
+			"lttd": 24.798171243758436,
+			"height": 292.8641136419028,
+			"heading": 3.7923600215762208,
+			"pitch": -22.047936595739415,
+			"roll": 0,
+			"time": 2.925516231290771,
+			"id": 1
+		},
+		{
+			"lgtd": 115.67772773748653,
+			"lttd": 24.79830054191074,
+			"height": 292.8538056900725,
+			"heading": 70.86120877419397,
+			"pitch": -38.21981316983411,
+			"roll": 0,
+			"time": 3.8730314237806236,
+			"id": 2
+		},
+		{
+			"lgtd": 115.67759211387612,
+			"lttd": 24.79865810488335,
+			"height": 290.4852951457724,
+			"heading": 129.13701395893756,
+			"pitch": -13.329236236436572,
+			"roll": 0,
+			"time": 3.976185788438268,
+			"id": 3
+		},
+		{
+			"lgtd": 115.67769762204126,
+			"lttd": 24.79902633476641,
+			"height": 325.81891136802733,
+			"heading": 164.6542995911801,
+			"pitch": -34.407496145733013,
+			"roll": 0,
+			"time": 10,
+			"id": 4
+		}
+	]
+},
+{
+	"name": "唐江镇",
+	"sites": [{
+			"lgtd": 114.74005307059673,
+			"lttd": 25.798858179442902,
+			"height": 182.71366893406957,
+			"heading": 17.241409695904164,
+			"pitch": -30.555196140746524,
+			"roll": 0,
+			"time": 10.15421796415074,
+			"id": 0
+		},
+		{
+			"lgtd": 114.74212261010568,
+			"lttd": 25.798009366622768,
+			"height": 182.71366901416332,
+			"heading": 17.24231040032363,
+			"pitch": -30.55519614082297,
+			"roll": 0,
+			"time": 3.6861581331957076,
+			"id": 1
+		},
+		{
+			"lgtd": 114.74163254074963,
+			"lttd": 25.798543987942047,
+			"height": 152.84983101394027,
+			"heading": 22.414510886269248,
+			"pitch": -28.972356817597667,
+			"roll": 0,
+			"time": 10,
+			"id": 2
+		}
+	]
+},
+{
+	"name": "田头水文站",
+	"sites": [{
+			"lgtd": 114.64547138394089,
+			"lttd": 25.791844144199885,
+			"height": 151.5033363075927,
+			"heading": 58.238717601383165,
+			"pitch": -4.064404616968048,
+			"roll": 0,
+			"time": 3.649302156506747,
+			"id": 0
+		},
+		{
+			"lgtd": 114.64574351173933,
+			"lttd": 25.792117743617172,
+			"height": 151.50333634205163,
+			"heading": 58.23883283104467,
+			"pitch": -4.064404616975253,
+			"roll": 0,
+			"time": 3.1595356885849193,
+			"id": 1
+		},
+		{
+			"lgtd": 114.64607094945183,
+			"lttd": 25.79200124532974,
+			"height": 154.28371675591916,
+			"heading": 357.7207016012423,
+			"pitch": -12.361270779944505,
+			"roll": 0,
+			"time": 4.571043691649714,
+			"id": 2
+		},
+		{
+			"lgtd": 114.64644974041919,
+			"lttd": 25.791694468075885,
+			"height": 228.14931037742645,
+			"heading": -125.9971001944819,
+			"pitch": -20.798751278578536,
+			"roll": 0,
+			"time": 10,
+			"id": 3
+		}
+	]
+},
+{
+	"name": "峡山水文站",
+	"sites": [{
+			"lgtd": 115.17477386843349,
+			"lttd": 25.920714707363267,
+			"height": 196.14648494590074,
+			"heading": 30.20117006206228,
+			"pitch": -19.72339898235289,
+			"roll": 0,
+			"time": 4.759683590910486,
+			"id": 0
+		},
+		{
+			"lgtd": 115.17515527712375,
+			"lttd": 25.921435450006996,
+			"height": 168.9087426867336,
+			"heading": 31.416370620210976,
+			"pitch": -12.485958338478369,
+			"roll": 0,
+			"time": 2.271161630852699,
+			"id": 1
+		},
+		{
+			"lgtd": 115.17479603114971,
+			"lttd": 25.921690564167044,
+			"height": 162.54781718179584,
+			"heading": 72.55411136033615,
+			"pitch": -15.775420561515318,
+			"roll": 0,
+			"time": 3.1069349841901657,
+			"id": 2
+		},
+		{
+			"lgtd": 115.17485433306379,
+			"lttd": 25.92225291996891,
+			"height": 161.09467284474522,
+			"heading": 128.0989777328708,
+			"pitch": -14.459635409775316,
+			"roll": 0,
+			"time": 3.366139107646819,
+			"id": 3
+		},
+		{
+			"lgtd": 115.17544851101776,
+			"lttd": 25.922550316052074,
+			"height": 163.85790611617267,
+			"heading": 180.62575627710524,
+			"pitch": -17.617523624735625,
+			"roll": 0,
+			"time": 2.925268938853155,
+			"id": 4
+		},
+		{
+			"lgtd": 115.17602770390663,
+			"lttd": 25.92244334327832,
+			"height": 165.13852943573147,
+			"heading": 209.50739809165967,
+			"pitch": -18.275413543900925,
+			"roll": 0,
+			"time": 0.6469447272016259,
+			"id": 5
+		},
+		{
+			"lgtd": 115.17612601020446,
+			"lttd": 25.92236727283435,
+			"height": 163.43442009855062,
+			"heading": 222.52576314873394,
+			"pitch": -16.564893820079845,
+			"roll": 0,
+			"time": 3.2122504804076595,
+			"id": 6
+		},
+		{
+			"lgtd": 115.17634405974228,
+			"lttd": 25.92181755171332,
+			"height": 165.96011663321406,
+			"heading": 285.3609597177649,
+			"pitch": -19.06488496338835,
+			"roll": 0,
+			"time": 1.5969345198817784,
+			"id": 7
+		},
+		{
+			"lgtd": 115.17613949915288,
+			"lttd": 25.921592896755854,
+			"height": 165.96011665463448,
+			"heading": 302.8922106981933,
+			"pitch": -19.06488496348203,
+			"roll": 0,
+			"time": 5.523579984843569,
+			"id": 8
+		},
+		{
+			"lgtd": 115.17567069642284,
+			"lttd": 25.921668365034797,
+			"height": 167.64036291092634,
+			"heading": 332.5737801126215,
+			"pitch": -19.196086941944515,
+			"roll": 0,
+			"time": 3.658853809966964,
+			"id": 9
+		},
+		{
+			"lgtd": 115.17542267941185,
+			"lttd": 25.92149349055393,
+			"height": 169.1233700439334,
+			"heading": 19.43963119205786,
+			"pitch": -23.275262647276364,
+			"roll": 0,
+			"time": 10,
+			"id": 10
+		}
+	]
+},
+{
+	"name": "信丰水文站",
+	"sites": [{
+			"lgtd": 114.9303241601931,
+			"lttd": 25.353765178115195,
+			"height": 218.16207444760948,
+			"heading": 318.33929003813057,
+			"pitch": -19.334864786831602,
+			"roll": 0,
+			"time": 6.785693626492386,
+			"id": 0
+		},
+		{
+			"lgtd": 114.92882884418478,
+			"lttd": 25.355257571505187,
+			"height": 188.00871571619064,
+			"heading": 319.7273336600632,
+			"pitch": -16.83428484400264,
+			"roll": 0,
+			"time": 1.61891581019881,
+			"id": 1
+		},
+		{
+			"lgtd": 114.92836673348533,
+			"lttd": 25.3552941606964,
+			"height": 182.19140055496246,
+			"heading": 348.36745290840383,
+			"pitch": -17.755171839704147,
+			"roll": 0,
+			"time": 1.0918304962868066,
+			"id": 2
+		},
+		{
+			"lgtd": 114.92806548635883,
+			"lttd": 25.355286538770817,
+			"height": 180.4196833362803,
+			"heading": 20.13202978178369,
+			"pitch": -15.913071391958823,
+			"roll": 0,
+			"time": 2.525392421960896,
+			"id": 3
+		},
+		{
+			"lgtd": 114.92759803048445,
+			"lttd": 25.355754033379666,
+			"height": 184.17871269676834,
+			"heading": 86.78867112565048,
+			"pitch": -19.597271151096933,
+			"roll": 0,
+			"time": 1.5838507715003578,
+			"id": 4
+		},
+		{
+			"lgtd": 114.9277634458778,
+			"lttd": 25.356120063573223,
+			"height": 186.04066775459796,
+			"heading": 115.08189529027499,
+			"pitch": -18.939489856324045,
+			"roll": 0,
+			"time": 1.5527622829237147,
+			"id": 5
+		},
+		{
+			"lgtd": 114.92801455808141,
+			"lttd": 25.35643432275609,
+			"height": 187.84730540867895,
+			"heading": 156.21990061225705,
+			"pitch": -20.650009196234322,
+			"roll": 0,
+			"time": 1.3125543880821966,
+			"id": 6
+		},
+		{
+			"lgtd": 114.9283709929597,
+			"lttd": 25.356495051870426,
+			"height": 186.6497948532924,
+			"heading": 188.67906965246016,
+			"pitch": -19.597381222421305,
+			"roll": 0,
+			"time": 2.0318922523888117,
+			"id": 7
+		},
+		{
+			"lgtd": 114.92880942109028,
+			"lttd": 25.356178397224338,
+			"height": 184.16564088780433,
+			"heading": 248.3899613665616,
+			"pitch": -16.965812349576183,
+			"roll": 0,
+			"time": 1.919527673053845,
+			"id": 8
+		},
+		{
+			"lgtd": 114.92881573269973,
+			"lttd": 25.355699628065574,
+			"height": 181.09033827111125,
+			"heading": 302.54618393259386,
+			"pitch": -13.9395064769125,
+			"roll": 0,
+			"time": 1.7499460331062386,
+			"id": 9
+		},
+		{
+			"lgtd": 114.929260274828,
+			"lttd": 25.355598605410664,
+			"height": 196.67094077263027,
+			"heading": 289.7016298533043,
+			"pitch": -14.466236470955494,
+			"roll": 0,
+			"time": 10,
+			"id": 10
+		}
+	]
+},
+{
+	"name": "兴国县水文站",
+	"sites": [{
+			"lgtd": 115.37170893552839,
+			"lttd": 26.336573741252,
+			"height": 235.07846188731492,
+			"heading": 333.4485746070776,
+			"pitch": -45.28287757396532,
+			"roll": 0,
+			"time": 3.9548672634799598,
+			"id": 0
+		},
+		{
+			"lgtd": 115.37158382962365,
+			"lttd": 26.33711489138998,
+			"height": 171.10806961078197,
+			"heading": 288.4485191050207,
+			"pitch": -21.235583984778884,
+			"roll": 0,
+			"time": 2.3109545137416743,
+			"id": 1
+		},
+		{
+			"lgtd": 115.37136710252543,
+			"lttd": 26.337529187837404,
+			"height": 180.85383051168174,
+			"heading": 199.48290571272366,
+			"pitch": -26.332388049956585,
+			"roll": 0,
+			"time": 1.7063432654211501,
+			"id": 2
+		},
+		{
+			"lgtd": 115.37098701390802,
+			"lttd": 26.337509330556834,
+			"height": 185.70336273871362,
+			"heading": 147.7585991532481,
+			"pitch": -34.48861162527788,
+			"roll": 0,
+			"time": 3.172979654268645,
+			"id": 3
+		},
+		{
+			"lgtd": 115.37061458121775,
+			"lttd": 26.337953668236892,
+			"height": 220.95929317642003,
+			"heading": 147.75843391969735,
+			"pitch": -34.48910830272171,
+			"roll": 0,
+			"time": 10,
+			"id": 4
+		}
+	]
+},
+{
+	"name": "羊信江水文站",
+	"sites": [{
+			"lgtd": 115.38499051790554,
+			"lttd": 25.309393962615918,
+			"height": 357.3037676913664,
+			"heading": 359.99998250653067,
+			"pitch": -89.99946330503899,
+			"roll": 0,
+			"time": 10.216360710392117,
+			"id": 0
+		},
+		{
+			"lgtd": 115.38584326082136,
+			"lttd": 25.3097555118162,
+			"height": 290.8849696367979,
+			"heading": 247.2417263725182,
+			"pitch": -33.61015612291589,
+			"roll": 0,
+			"time": 10.520720409374407,
+			"id": 1
+		},
+		{
+			"lgtd": 115.38492425925696,
+			"lttd": 25.310420679972445,
+			"height": 277.86836498230696,
+			"heading": 177.93098866319568,
+			"pitch": -26.438331487354915,
+			"roll": 0,
+			"time": 7.214813029874819,
+			"id": 2
+		},
+		{
+			"lgtd": 115.38496364504458,
+			"lttd": 25.30971457387922,
+			"height": 255.81458937749267,
+			"heading": 178.12349399219434,
+			"pitch": -26.456119755629672,
+			"roll": 0,
+			"time": 4.548865007326789,
+			"id": 3
+		},
+		{
+			"lgtd": 115.38482311684486,
+			"lttd": 25.309269426288694,
+			"height": 255.53129902109504,
+			"heading": 43.65077689179051,
+			"pitch": -29.4092434945102,
+			"roll": 0,
+			"time": 10,
+			"id": 4
+		}
+	]
+},
+{
+	"name": "窑下坝(二)水文站",
+	"sites": [{
+			"lgtd": 114.75153179659618,
+			"lttd": 25.6561409367769,
+			"height": 141.47844062559307,
+			"heading": 83.44766194842342,
+			"pitch": -1.5847956629367275,
+			"roll": 0,
+			"time": 7.885330950374873,
+			"id": 0
+		},
+		{
+			"lgtd": 114.75238586909818,
+			"lttd": 25.656328470672598,
+			"height": 146.3755128895864,
+			"heading": 80.34458293249024,
+			"pitch": -14.380984188117454,
+			"roll": 0,
+			"time": 6.016832028669608,
+			"id": 1
+		},
+		{
+			"lgtd": 114.75266108110516,
+			"lttd": 25.65687791140908,
+			"height": 152.7332162298262,
+			"heading": 157.0688400222252,
+			"pitch": -22.677834801494015,
+			"roll": 0,
+			"time": 6.3452276888598025,
+			"id": 2
+		},
+		{
+			"lgtd": 114.75335559253575,
+			"lttd": 25.6569984139037,
+			"height": 156.8511226447299,
+			"heading": 196.72431314306905,
+			"pitch": -28.584011825596896,
+			"roll": 0,
+			"time": 7.743139182086575,
+			"id": 3
+		},
+		{
+			"lgtd": 114.75413355472372,
+			"lttd": 25.657321098974066,
+			"height": 168.73841311316937,
+			"heading": 208.62120170764683,
+			"pitch": -25.350107374978478,
+			"roll": 0,
+			"time": 24.436918551346558,
+			"id": 4
+		},
+		{
+			"lgtd": 114.75645479725235,
+			"lttd": 25.656212624402826,
+			"height": 342.72771161049604,
+			"heading": 280.3463446758279,
+			"pitch": -30.55427189860574,
+			"roll": 0,
+			"time": 10,
+			"id": 5
+		}
+	]
+},
+{
+	"name": "于都县车溪水位站",
+	"sites": [{
+			"lgtd": 115.57807435977442,
+			"lttd": 26.029361067912753,
+			"height": 182.81258494779468,
+			"heading": 0.17244526561183712,
+			"pitch": -19.62157414681603,
+			"roll": 0,
+			"time": 11.325358178188184,
+			"id": 0
+		},
+		{
+			"lgtd": 115.577706939059,
+			"lttd": 26.030465338848998,
+			"height": 182.81258498039097,
+			"heading": 0.17228401899564688,
+			"pitch": -19.621574146899206,
+			"roll": 0,
+			"time": 11.362344857040467,
+			"id": 1
+		},
+		{
+			"lgtd": 115.57688832696805,
+			"lttd": 26.031350775387324,
+			"height": 195.02847925946116,
+			"heading": 49.65468337478097,
+			"pitch": -24.543412457559825,
+			"roll": 0,
+			"time": 13.284590398124914,
+			"id": 2
+		},
+		{
+			"lgtd": 115.5782875745038,
+			"lttd": 26.03184256538807,
+			"height": 202.9991207420826,
+			"heading": 51.5518491796397,
+			"pitch": -33.12140344510992,
+			"roll": 0,
+			"time": 9.983292393890068,
+			"id": 3
+		},
+		{
+			"lgtd": 115.57882330126253,
+			"lttd": 26.032737088262806,
+			"height": 200.97095802985132,
+			"heading": 144.82794636405796,
+			"pitch": -31.57454064692768,
+			"roll": 0,
+			"time": 9.272581213551932,
+			"id": 4
+		},
+		{
+			"lgtd": 115.57967989409111,
+			"lttd": 26.032261778046728,
+			"height": 171.06791298557073,
+			"heading": 249.3909264815607,
+			"pitch": -13.855731085872648,
+			"roll": 0,
+			"time": 10,
+			"id": 5
+		}
+	]
+},
+{
+	"name": "于都县城红军桥",
+	"sites": [{
+			"lgtd": 115.39125761585157,
+			"lttd": 25.962102084254518,
+			"height": 259.7032936969772,
+			"heading": 196.46862233626604,
+			"pitch": -27.062468541455402,
+			"roll": 0,
+			"time": 22.25974250829478,
+			"id": 0
+		},
+		{
+			"lgtd": 115.38824675523101,
+			"lttd": 25.95853334088089,
+			"height": 229.87960310373455,
+			"heading": 196.4673058052514,
+			"pitch": -27.061107778708916,
+			"roll": 0,
+			"time": 29.473820957304717,
+			"id": 1
+		},
+		{
+			"lgtd": 115.38338999333877,
+			"lttd": 25.962551632826216,
+			"height": 262.8240906801075,
+			"heading": 196.46517755508287,
+			"pitch": -27.06188439912585,
+			"roll": 0,
+			"time": 10,
+			"id": 2
+		}
+	]
+},
+{
+	"name": "于都县梓山镇",
+	"sites": [{
+			"lgtd": 115.58026484970667,
+			"lttd": 25.941898196863495,
+			"height": 282.79551676940173,
+			"heading": 161.99041781985468,
+			"pitch": -15.965132937725798,
+			"roll": 0,
+			"time": 9.000378888667957,
+			"id": 0
+		},
+		{
+			"lgtd": 115.57874150315838,
+			"lttd": 25.937206780910294,
+			"height": 255.6836988814175,
+			"heading": 86.89884245982351,
+			"pitch": -14.383465942991208,
+			"roll": 0,
+			"time": 6.000198603643515,
+			"id": 1
+		},
+		{
+			"lgtd": 115.5829530473258,
+			"lttd": 25.93722910596424,
+			"height": 179.9280150672421,
+			"heading": 69.99159362693227,
+			"pitch": -13.064886133583101,
+			"roll": 0,
+			"time": 3.0000640803535346,
+			"id": 2
+		},
+		{
+			"lgtd": 115.5831092830975,
+			"lttd": 25.93727185420875,
+			"height": 177.24669386073947,
+			"heading": 69.99166196238266,
+			"pitch": -20.433160541021437,
+			"roll": 0,
+			"time": 3.0001149556048077,
+			"id": 3
+		},
+		{
+			"lgtd": 115.58314129023174,
+			"lttd": 25.93739472321611,
+			"height": 178.45865218807012,
+			"heading": 128.90076687087893,
+			"pitch": -25.30157657654638,
+			"roll": 0,
+			"time": 3.0000740469532556,
+			"id": 4
+		},
+		{
+			"lgtd": 115.58323302616911,
+			"lttd": 25.9374328057654,
+			"height": 179.58019896317273,
+			"heading": 169.62807972236988,
+			"pitch": -30.038411631079164,
+			"roll": 0,
+			"time": 3.0000099284994923,
+			"id": 5
+		},
+		{
+			"lgtd": 115.58334444877046,
+			"lttd": 25.9373970515602,
+			"height": 179.55073228478432,
+			"heading": 224.5372193663976,
+			"pitch": -29.906832928822812,
+			"roll": 0,
+			"time": 3.000071344976907,
+			"id": 6
+		},
+		{
+			"lgtd": 115.58337741180415,
+			"lttd": 25.93728542123831,
+			"height": 179.23553574457765,
+			"heading": 285.2645065111891,
+			"pitch": -28.45946715376921,
+			"roll": 0,
+			"time": 3.000002390412698,
+			"id": 7
+		},
+		{
+			"lgtd": 115.58328771846413,
+			"lttd": 25.93720810473454,
+			"height": 179.34558387100697,
+			"heading": 347.80992182588284,
+			"pitch": -28.985781983270883,
+			"roll": 0,
+			"time": 5.000123096580041,
+			"id": 8
+		},
+		{
+			"lgtd": 115.58333865013807,
+			"lttd": 25.936775131125863,
+			"height": 196.07730337418616,
+			"heading": 346.5372168290881,
+			"pitch": -13.855249764764437,
+			"roll": 0,
+			"time": 10,
+			"id": 9
+		}
+	]
+},
+{
+	"name": "筠门岭水文站",
+	"sites": [{
+			"lgtd": 115.74929322383363,
+			"lttd": 25.23828049673741,
+			"height": 246.789425117895,
+			"heading": 291.03475501865495,
+			"pitch": -17.08808463742986,
+			"roll": 0,
+			"time": 3.7118090310917227,
+			"id": 0
+		},
+		{
+			"lgtd": 115.74851626040606,
+			"lttd": 25.238040214501513,
+			"height": 257.01461736951023,
+			"heading": 26.724078905785838,
+			"pitch": -27.494311090686715,
+			"roll": 0,
+			"time": 1.8470272691035552,
+			"id": 1
+		},
+		{
+			"lgtd": 115.74818767926412,
+			"lttd": 25.238221883427308,
+			"height": 242.3524569608271,
+			"heading": 71.03428363127311,
+			"pitch": -9.916224308117933,
+			"roll": 0,
+			"time": 2.3868456753789427,
+			"id": 2
+		},
+		{
+			"lgtd": 115.74862824741379,
+			"lttd": 25.23849167829622,
+			"height": 242.35245698690414,
+			"heading": 71.03445923801924,
+			"pitch": -9.916224307891099,
+			"roll": 0,
+			"time": 1.576279466242496,
+			"id": 3
+		},
+		{
+			"lgtd": 115.74831370118356,
+			"lttd": 25.238392664676194,
+			"height": 253.62488933745772,
+			"heading": 25.13777339573,
+			"pitch": -35.16638255843889,
+			"roll": 0,
+			"time": 10,
+			"id": 4
+		}
+	]
+},
+{
+	"name": "章水",
+	"sites": [{
+			"lgtd": 114.96870359733968,
+			"lttd": 25.76242385667855,
+			"height": 18232.634658918716,
+			"heading": 0.00014817568601641,
+			"pitch": -58.210624696125144,
+			"roll": 0,
+			"time": 6.956917341348747,
+			"id": 0
+		},
+		{
+			"lgtd": 114.9701259291854,
+			"lttd": 25.819937503821745,
+			"height": 7239.146125759929,
+			"heading": 325.2769988295598,
+			"pitch": -56.67204649498496,
+			"roll": 0,
+			"time": 3.6804006490257186,
+			"id": 1
+		},
+		{
+			"lgtd": 114.98022003014248,
+			"lttd": 25.879213135382315,
+			"height": 6408.98876869306,
+			"heading": 244.50028533982282,
+			"pitch": -48.818887008020205,
+			"roll": 0,
+			"time": 8.300822882552968,
+			"id": 2
+		},
+		{
+			"lgtd": 114.84349471396922,
+			"lttd": 25.82164510653492,
+			"height": 7631.484989953227,
+			"heading": 259.9602346403139,
+			"pitch": -38.74496608155666,
+			"roll": 0,
+			"time": 4.823931844153354,
+			"id": 3
+		},
+		{
+			"lgtd": 114.7651362697898,
+			"lttd": 25.809381086942725,
+			"height": 3854.078856821172,
+			"heading": 261.5178526202244,
+			"pitch": -18.702226879064654,
+			"roll": 0,
+			"time": 7.2500703487673475,
+			"id": 4
+		},
+		{
+			"lgtd": 114.63817527134836,
+			"lttd": 25.779028821342006,
+			"height": 2283.9893732909113,
+			"heading": 272.73745553008337,
+			"pitch": -19.740500506417234,
+			"roll": 0,
+			"time": 5.75194072619071,
+			"id": 5
+		},
+		{
+			"lgtd": 114.5348383538208,
+			"lttd": 25.795568826929095,
+			"height": 2368.8230357831344,
+			"heading": 276.00863991409216,
+			"pitch": -20.5532669449762,
+			"roll": 0,
+			"time": 3.1603636873701904,
+			"id": 6
+		},
+		{
+			"lgtd": 114.47721076488519,
+			"lttd": 25.796541283606203,
+			"height": 2162.283131168224,
+			"heading": 289.51339911654895,
+			"pitch": -19.739850278955146,
+			"roll": 0,
+			"time": 1.246547779966099,
+			"id": 7
+		},
+		{
+			"lgtd": 114.45496714816848,
+			"lttd": 25.80042987453153,
+			"height": 2365.0481978757307,
+			"heading": 300.2480040037381,
+			"pitch": -21.637149873405818,
+			"roll": 0,
+			"time": 2.2678527300444427,
+			"id": 8
+		},
+		{
+			"lgtd": 114.4370894190072,
+			"lttd": 25.834032493120084,
+			"height": 2300.4098104173318,
+			"heading": 272.64995845306163,
+			"pitch": -20.011474172058044,
+			"roll": 0,
+			"time": 2.255165183430458,
+			"id": 9
+		},
+		{
+			"lgtd": 114.39595782445627,
+			"lttd": 25.835594388726907,
+			"height": 2283.1029708953574,
+			"heading": 257.11250422693223,
+			"pitch": -19.875939527741394,
+			"roll": 0,
+			"time": 3.911289561558493,
+			"id": 10
+		},
+		{
+			"lgtd": 114.32785785618236,
+			"lttd": 25.816568814913598,
+			"height": 1916.745584978722,
+			"heading": 241.82859106047803,
+			"pitch": -18.117263762642196,
+			"roll": 0,
+			"time": 2.926231544715979,
+			"id": 11
+		},
+		{
+			"lgtd": 114.2811046713997,
+			"lttd": 25.793324343599835,
+			"height": 1916.7455850290135,
+			"heading": 241.8082346795699,
+			"pitch": -18.117263762627942,
+			"roll": 0,
+			"time": 4.083012942884714,
+			"id": 12
+		},
+		{
+			"lgtd": 114.21615639118154,
+			"lttd": 25.760451891400777,
+			"height": 1916.7455850522965,
+			"heading": 241.77998375717826,
+			"pitch": -18.117263762613078,
+			"roll": 0,
+			"time": 3.4185731985119503,
+			"id": 13
+		},
+		{
+			"lgtd": 114.1645461603859,
+			"lttd": 25.72893359240147,
+			"height": 1807.302334871143,
+			"heading": 242.02285325878887,
+			"pitch": -17.033218818779247,
+			"roll": 0,
+			"time": 10,
+			"id": 14
+		}
+	]
+},
+{
+	"name": "上犹安和水文站",
+	"sites": [{
+		"id": 11,
+		"lgtd": 114.51466129591272,
+		"lttd": 25.974153571405463,
+		"height": 783.1130809537887,
+		"heading": 347.17021897912304,
+		"pitch": -57.11259658347891,
+		"roll": 359.9379148045168,
+		"time": 3
+	}, {
+		"id": 12,
+		"lgtd": 114.5160044851434,
+		"lttd": 25.976125835455534,
+		"height": 256.71130669244434,
+		"heading": 303.76593805745335,
+		"pitch": -16.98489778887001,
+		"roll": 359.8684953799254,
+		"time": 3
+	}, {
+		"id": 13,
+		"lgtd": 114.51534197767934,
+		"lttd": 25.976687793122593,
+		"height": 256.87562497324905,
+		"heading": 303.76593864891777,
+		"pitch": -16.984896494217267,
+		"roll": 359.86849335519173,
+		"time": 3
+	}, {
+		"id": 14,
+		"lgtd": 114.5148464091603,
+		"lttd": 25.97704164486507,
+		"height": 256.9790937007369,
+		"heading": 303.7659390213417,
+		"pitch": -16.98489567902082,
+		"roll": 359.8684920802895,
+		"time": 3
+	}, {
+		"id": 15,
+		"lgtd": 114.51525170202267,
+		"lttd": 25.97785216834975,
+		"height": 262.6899900883583,
+		"heading": 283.19928282133054,
+		"pitch": -19.301840632047885,
+		"roll": 359.84396632321904,
+		"time": 3
+	}, {
+		"id": 16,
+		"lgtd": 114.51510276568013,
+		"lttd": 25.978986229031104,
+		"height": 289.0853728849265,
+		"heading": 233.79932050955492,
+		"pitch": -31.217542098595917,
+		"roll": 359.85743553941023,
+		"time": 3
+	}, {
+		"id": 17,
+		"lgtd": 114.51305984347823,
+		"lttd": 25.979606426279094,
+		"height": 263.79849908736315,
+		"heading": 144.37384323565695,
+		"pitch": -20.625821976241888,
+		"roll": 0.09405079262499251,
+		"time": 3
+	}, {
+		"id": 18,
+		"lgtd": 114.5131392708897,
+		"lttd": 25.97771468470743,
+		"height": 258.2762811796298,
+		"heading": 56.08967556808812,
+		"pitch": -33.20350085700017,
+		"roll": 0.15013885633180654,
+		"time": 3
+	}]
+},
+{
+	"name": "东江源水文站",
+	"sites": [{
+		"id": 0,
+		"lgtd": 115.68547000000004,
+		"lttd": 24.82632499999999,
+		"height": 335.36999999748906,
+		"heading": 90.25999999999998,
+		"pitch": -18.700000000000006,
+		"roll": 0.14999999999999067,
+		"time": 3
+	}, {
+		"id": 1,
+		"lgtd": 115.68653553012895,
+		"lttd": 24.82650732724205,
+		"height": 298.6763337731029,
+		"heading": 105.86811925779001,
+		"pitch": -12.410999515062585,
+		"roll": 0.14410488895351756,
+		"time": 3
+	}, {
+		"id": 2,
+		"lgtd": 115.68666726612246,
+		"lttd": 24.825276111911315,
+		"height": 313.58307070173464,
+		"heading": 46.123830121510174,
+		"pitch": -19.361806143756578,
+		"roll": 0.11187318063229526,
+		"time": 3
+	}, {
+		"id": 3,
+		"lgtd": 115.68767175656781,
+		"lttd": 24.82495098303206,
+		"height": 293.2401156686908,
+		"heading": 0.9811530891750125,
+		"pitch": -11.748645545031623,
+		"roll": 0.002560991998665182,
+		"time": 3
+	}, {
+		"id": 4,
+		"lgtd": 115.68873084481494,
+		"lttd": 24.824892733676535,
+		"height": 313.6751648888555,
+		"heading": -30.85997136957513,
+		"pitch": -17.706527520218128,
+		"roll": 359.894904913255,
+		"time": 3
+	}, {
+		"id": 5,
+		"lgtd": 115.68980052046027,
+		"lttd": 24.825744395942422,
+		"height": 349.17879875873047,
+		"heading": -60.40282871250355,
+		"pitch": -24.326734557831212,
+		"roll": 359.8425435534939,
+		"time": 3
+	}, {
+		"id": 6,
+		"lgtd": 115.68955130711659,
+		"lttd": 24.827641091306898,
+		"height": 356.58787642401387,
+		"heading": -120.3701303162246,
+		"pitch": -26.643636022510435,
+		"roll": 359.88976680007033,
+		"time": 3
+	}, {
+		"id": 7,
+		"lgtd": 115.6882391556815,
+		"lttd": 24.827674900584455,
+		"height": 358.2027523616649,
+		"heading": -160.5409173900484,
+		"pitch": -30.284546348170295,
+		"roll": 359.97779293315614,
+		"time": 3
+	}, {
+		"id": 8,
+		"lgtd": 115.68557713013499,
+		"lttd": 24.828566931802087,
+		"height": 481.3337586308774,
+		"heading": -220.48834790837657,
+		"pitch": -31.939542626610486,
+		"roll": 0.13102101976400096,
+		"time": 3
+	}]
+}
+]
\ No newline at end of file
diff --git a/widgets/FlyRoute/flyroute.json b/widgets/FlyRoute/flyroute.json
new file mode 100644
index 0000000..6741a7f
--- /dev/null
+++ b/widgets/FlyRoute/flyroute.json
@@ -0,0 +1,224 @@
+[{
+    "name": "鄱阳湖区域浏览",
+    "sites": [{
+        "id": 0,
+        "lgtd": 116.36485651934478,
+        "lttd": 28.61499997888566,
+        "height": 21615.65670519218,
+        "heading": 357.5324369211186,
+        "pitch": -33.949736768804875,
+        "roll": 0.07493032373110281,
+        "time": 3
+    }, {
+        "id": 1,
+        "lgtd": 116.61798359831062,
+        "lttd": 28.678026785994387,
+        "height": 21615.65670518082,
+        "heading": 328.4540952954534,
+        "pitch": -33.9497367688052,
+        "roll": 0.1007963589203403,
+        "time": 3
+    }, {
+        "id": 2,
+        "lgtd": 116.87603493936163,
+        "lttd": 28.921761691820024,
+        "height": 21615.6567051778,
+        "heading": 287.79156780309444,
+        "pitch": -33.94973676880269,
+        "roll": 0.12547175713320183,
+        "time": 3
+    }, {
+        "id": 3,
+        "lgtd": 116.909026583975,
+        "lttd": 29.210477509533032,
+        "height": 21615.656705175323,
+        "heading": 250.72860434190048,
+        "pitch": -33.94973676880164,
+        "roll": 0.1182078443376804,
+        "time": 3
+    }, {
+        "id": 4,
+        "lgtd": 116.83971215830472,
+        "lttd": 29.411874687056383,
+        "height": 21615.656705178324,
+        "heading": 220.5678813179093,
+        "pitch": -33.949736768801614,
+        "roll": 0.14418892227725896,
+        "time": 3
+    }, {
+        "id": 5,
+        "lgtd": 116.63736760852666,
+        "lttd": 29.559276610554274,
+        "height": 21615.65670518267,
+        "heading": 192.7750271204978,
+        "pitch": -33.94973676880136,
+        "roll": 0.11990434840510432,
+        "time": 3
+    }, {
+        "id": 6,
+        "lgtd": 116.35268250530002,
+        "lttd": 29.569093455601525,
+        "height": 21615.656705182217,
+        "heading": 159.031653642729,
+        "pitch": -33.949736768801486,
+        "roll": 0.12226477526126023,
+        "time": 3
+    }, {
+        "id": 7,
+        "lgtd": 116.03398252452703,
+        "lttd": 29.43313255053548,
+        "height": 21615.656705183854,
+        "heading": 129.44379294438437,
+        "pitch": -33.949736768801486,
+        "roll": 0.1399973458170845,
+        "time": 3
+    }, {
+        "id": 8,
+        "lgtd": 115.56656976497351,
+        "lttd": 29.31417361097843,
+        "height": 36832.409250694924,
+        "heading": 104.1903000851007,
+        "pitch": -36.64434419262527,
+        "roll": 359.9999999990976,
+        "time": 3
+    }, {
+        "id": 9,
+        "lgtd": 115.740825901675,
+        "lttd": 28.69543529618644,
+        "height": 29061.533148178412,
+        "heading": 48.8874638325123,
+        "pitch": -37.012291045271574,
+        "roll": 0.13594606119813848,
+        "time": 3
+    }, {
+        "id": 10,
+        "lgtd": 116.04912917565872,
+        "lttd": 28.499254393238655,
+        "height": 24977.858469140665,
+        "heading": 23.312402615521254,
+        "pitch": -36.97115669047082,
+        "roll": 0.1669937889431866,
+        "time": 3
+    }, {
+        "id": 11,
+        "lgtd": 116.0488849187321,
+        "lttd": 27.591614215992426,
+        "height": 100049.13699253049,
+        "heading": 10.451947125671502,
+        "pitch": -37.89649963820525,
+        "roll": 0.15288734882291413,
+        "time": 3
+    }]
+},
+{
+    "name": "鄱阳湖区域浏览2",
+    "sites": [{
+        "id": 0,
+        "lgtd": 116.36485651934478,
+        "lttd": 28.61499997888566,
+        "height": 21615.65670519218,
+        "heading": 357.5324369211186,
+        "pitch": -33.949736768804875,
+        "roll": 0.07493032373110281,
+        "time": 3
+    }, {
+        "id": 1,
+        "lgtd": 116.61798359831062,
+        "lttd": 28.678026785994387,
+        "height": 21615.65670518082,
+        "heading": 328.4540952954534,
+        "pitch": -33.9497367688052,
+        "roll": 0.1007963589203403,
+        "time": 3
+    }, {
+        "id": 2,
+        "lgtd": 116.87603493936163,
+        "lttd": 28.921761691820024,
+        "height": 21615.6567051778,
+        "heading": 287.79156780309444,
+        "pitch": -33.94973676880269,
+        "roll": 0.12547175713320183,
+        "time": 3
+    }, {
+        "id": 3,
+        "lgtd": 116.909026583975,
+        "lttd": 29.210477509533032,
+        "height": 21615.656705175323,
+        "heading": 250.72860434190048,
+        "pitch": -33.94973676880164,
+        "roll": 0.1182078443376804,
+        "time": 3
+    }, {
+        "id": 4,
+        "lgtd": 116.83971215830472,
+        "lttd": 29.411874687056383,
+        "height": 21615.656705178324,
+        "heading": 220.5678813179093,
+        "pitch": -33.949736768801614,
+        "roll": 0.14418892227725896,
+        "time": 3
+    }, {
+        "id": 5,
+        "lgtd": 116.63736760852666,
+        "lttd": 29.559276610554274,
+        "height": 21615.65670518267,
+        "heading": 192.7750271204978,
+        "pitch": -33.94973676880136,
+        "roll": 0.11990434840510432,
+        "time": 3
+    }, {
+        "id": 6,
+        "lgtd": 116.35268250530002,
+        "lttd": 29.569093455601525,
+        "height": 21615.656705182217,
+        "heading": 159.031653642729,
+        "pitch": -33.949736768801486,
+        "roll": 0.12226477526126023,
+        "time": 3
+    }, {
+        "id": 7,
+        "lgtd": 116.03398252452703,
+        "lttd": 29.43313255053548,
+        "height": 21615.656705183854,
+        "heading": 129.44379294438437,
+        "pitch": -33.949736768801486,
+        "roll": 0.1399973458170845,
+        "time": 3
+    }, {
+        "id": 8,
+        "lgtd": 115.56656976497351,
+        "lttd": 29.31417361097843,
+        "height": 36832.409250694924,
+        "heading": 104.1903000851007,
+        "pitch": -36.64434419262527,
+        "roll": 359.9999999990976,
+        "time": 3
+    }, {
+        "id": 9,
+        "lgtd": 115.740825901675,
+        "lttd": 28.69543529618644,
+        "height": 29061.533148178412,
+        "heading": 48.8874638325123,
+        "pitch": -37.012291045271574,
+        "roll": 0.13594606119813848,
+        "time": 3
+    }, {
+        "id": 10,
+        "lgtd": 116.04912917565872,
+        "lttd": 28.499254393238655,
+        "height": 24977.858469140665,
+        "heading": 23.312402615521254,
+        "pitch": -36.97115669047082,
+        "roll": 0.1669937889431866,
+        "time": 3
+    }, {
+        "id": 11,
+        "lgtd": 116.0488849187321,
+        "lttd": 27.591614215992426,
+        "height": 100049.13699253049,
+        "heading": 10.451947125671502,
+        "pitch": -37.89649963820525,
+        "roll": 0.15288734882291413,
+        "time": 3
+    }]
+}]
\ No newline at end of file
diff --git a/widgets/FlyRoute/images/location4.png b/widgets/FlyRoute/images/location4.png
new file mode 100644
index 0000000..8e08aae
--- /dev/null
+++ b/widgets/FlyRoute/images/location4.png
Binary files differ
diff --git a/widgets/FlyRoute/manifest.json b/widgets/FlyRoute/manifest.json
new file mode 100644
index 0000000..83e2762
--- /dev/null
+++ b/widgets/FlyRoute/manifest.json
@@ -0,0 +1,17 @@
+{
+  "name": "FlyRoute",
+  "2D": true,
+  "3D": true,
+  "platform": "HTML",
+  "version": "2.10",
+  "wabVersion": "2.10",
+  "author": "jxdnosng",
+  "description": "",
+  "copyright": "",
+  "license": "",
+  "properties": {
+    "hasConfig": false,
+    "inPanel": false,
+    "hasVersionManager": false
+  }
+}
\ No newline at end of file
diff --git a/widgets/FlyRoute/nls/es/strings.js b/widgets/FlyRoute/nls/es/strings.js
new file mode 100644
index 0000000..05739ad
--- /dev/null
+++ b/widgets/FlyRoute/nls/es/strings.js
@@ -0,0 +1,5 @@
+define(
+   ({
+    _widgetLabel: ""
+  })
+);
\ No newline at end of file
diff --git a/widgets/FlyRoute/nls/strings.js b/widgets/FlyRoute/nls/strings.js
new file mode 100644
index 0000000..0dc7896
--- /dev/null
+++ b/widgets/FlyRoute/nls/strings.js
@@ -0,0 +1,7 @@
+define({
+  root: ({
+    _widgetLabel: "FlyRoute"
+  }),
+  "es": 1,
+  "zh-cn": 1
+});
\ No newline at end of file
diff --git a/widgets/FlyRoute/nls/zh-cn/strings.js b/widgets/FlyRoute/nls/zh-cn/strings.js
new file mode 100644
index 0000000..0fcd4b4
--- /dev/null
+++ b/widgets/FlyRoute/nls/zh-cn/strings.js
@@ -0,0 +1,5 @@
+define(
+   ({
+    _widgetLabel: "飞行路线"
+  })
+);
\ No newline at end of file
diff --git a/widgets/LeftNavigationBar/Widget.js b/widgets/LeftNavigationBar/Widget.js
index 68aac90..1a7e5ac 100644
--- a/widgets/LeftNavigationBar/Widget.js
+++ b/widgets/LeftNavigationBar/Widget.js
@@ -216,7 +216,7 @@
 								id: d[k].id,
 								serviceName: d[k].serviceName,
 								alpha: 1,
-								// checked: d[k].menuStatus
+								checked: d[k].menuStatus
 							}
 
 							if (d[k].serviceUrl.indexOf('.openrealspace') != -1) {
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()
+
+                }
+
             }
 
         });
diff --git a/widgets/Rolling/Widget.js b/widgets/Rolling/Widget.js
index ec040f5..d7c4cf6 100644
--- a/widgets/Rolling/Widget.js
+++ b/widgets/Rolling/Widget.js
@@ -69,6 +69,7 @@
 
             startup: function () {
                 topic.subscribe("openRolling", lang.hitch(this, this.openRolling));
+                topic.subscribe("closeRolling", lang.hitch(this, this.closeRolling));
                 var that = this;
                 // 点击卷帘关闭面板
                 $('.rollinng-table-hezi-xx').click(function () {
@@ -78,16 +79,16 @@
 
                     that.map.imageryLayers.remove(that.earthAtNightRight);
                     that.map.imageryLayers.remove(that.zjRight);
-                    
-                    
+
+
                     that.map.imageryLayers.remove(that.tiandituLeft);
                     that.map.imageryLayers.remove(that.tiandituZJLeft);
 
                     that.map.imageryLayers.remove(that.tiandituRight);
                     that.map.imageryLayers.remove(that.tiandituZJRight);
-         
+
                     $('.jimu-widget-Rolling').hide();
-                   
+
                 });
 
                 // 加载左边图层
@@ -113,7 +114,7 @@
                         loadMapRight();
                     } else if ($(this).val() == 1) {
                         loadMapTianRight();
-                    } 
+                    }
                 });
 
                 // 加载左边天地图影像图层方法
@@ -225,6 +226,29 @@
                 }
             },
 
+            closeRolling: function (item) {
+                if (item == this.name) {
+                    var that = this;
+                    if (this.flag == true) {
+                        this.flag = false;
+                        that.map.imageryLayers.remove(that.earthAtNightLeft);
+                        that.map.imageryLayers.remove(that.zjLeft);
+
+                        that.map.imageryLayers.remove(that.earthAtNightRight);
+                        that.map.imageryLayers.remove(that.zjRight);
+
+
+                        that.map.imageryLayers.remove(that.tiandituLeft);
+                        that.map.imageryLayers.remove(that.tiandituZJLeft);
+
+                        that.map.imageryLayers.remove(that.tiandituRight);
+                        that.map.imageryLayers.remove(that.tiandituZJRight);
+
+                        $('.jimu-widget-Rolling').hide();
+                    }
+                }
+            },
+
             onOpen: function () {
                 var that = this;
                 if (this.flag != true) return;
@@ -244,7 +268,7 @@
                 that.earthAtNightLeft.splitDirection = new Cesium.Cartesian2(Cesium.ImagerySplitDirection.LEFT, Cesium.ImagerySplitDirection.NONE);
                 that.zjLeft.splitDirection = new Cesium.Cartesian2(Cesium.ImagerySplitDirection.LEFT, Cesium.ImagerySplitDirection.NONE);
 
-               
+
                 that.tiandituRight = that.map.imageryLayers.addImageryProvider(new Cesium.WebMapTileServiceImageryProvider(
                     that.imageryProviderDian[0]
                 ));
@@ -254,6 +278,8 @@
 
                 that.tiandituRight.splitDirection = new Cesium.Cartesian2(Cesium.ImagerySplitDirection.RIGHT, Cesium.ImagerySplitDirection.NONE);
                 that.tiandituZJRight.splitDirection = new Cesium.Cartesian2(Cesium.ImagerySplitDirection.RIGHT, Cesium.ImagerySplitDirection.NONE);
+
+                $('.jimu-widget-Rolling').show();
             },
 
 
diff --git a/widgets/Sign/Widget.js b/widgets/Sign/Widget.js
index 2b6d671..746319d 100644
--- a/widgets/Sign/Widget.js
+++ b/widgets/Sign/Widget.js
@@ -47,6 +47,8 @@
         ind: '',
         startup: function startup() {
             topic.subscribe("openSign", lang.hitch(this, this.onOpenSign));
+            topic.subscribe("closeSign", lang.hitch(this, this.onCloseSign));
+
             // var fileNames = '我的标记点';
             var that = this;
             var scene = that.map.scene;
@@ -58,7 +60,11 @@
                 // 监听鼠标移动
                 handlers.setInputAction(function (moveEvent) {
                     // 点击完成绘制
-                    $('.danji').css({ 'display': 'block', 'left': moveEvent.startPosition.x + 10 + 'px', 'top': moveEvent.startPosition.y + 10 + 'px' });
+                    $('.danji').css({
+                        'display': 'block',
+                        'left': moveEvent.startPosition.x + 10 + 'px',
+                        'top': moveEvent.startPosition.y + 10 + 'px'
+                    });
                 }, Cesium.ScreenSpaceEventType.MOUSE_MOVE);
                 // 监听鼠标点击
                 handlers.setInputAction(function (clickEvent) {
@@ -78,7 +84,10 @@
                     $('.sign-tian-hang-textarea').val('');
                     $('.sign-tian').show();
 
-                    $('.sign-tian').css({ 'left': clickEvent.position.x - $('.sign-tian').innerWidth() / 2 + 'px', 'top': clickEvent.position.y - 300 + 'px' });
+                    $('.sign-tian').css({
+                        'left': clickEvent.position.x - $('.sign-tian').innerWidth() / 2 + 'px',
+                        'top': clickEvent.position.y - 300 + 'px'
+                    });
                     if (that.toggle && $('.sign-tian').css('display', 'block')) {
                         that.map.scene.postRender.addEventListener(moveDom);
                         that.toggle = false;
@@ -122,7 +131,11 @@
                         that.arrQsrbz.push(datas[i].describe);
                         that.Dzbx = datas[i].x;
                         that.Dzby = datas[i].y;
-                        that.fileArr.push({ x: datas[i].x, y: datas[i].y, z: datas[i].z });
+                        that.fileArr.push({
+                            x: datas[i].x,
+                            y: datas[i].y,
+                            z: datas[i].z
+                        });
                         addPoint(that.fileArr[i], datas[i].shuzi + date);
 
                         window.localStorage.setItem('BJD', JSON.stringify(that.fileArr));
@@ -152,8 +165,16 @@
                         that.Dname.push(datas[i].name);
                         that.Dzbx = datas[i].x;
                         that.Dzby = datas[i].y;
-                        that.fileArr.push({ x: datas[i].x, y: datas[i].y, z: datas[i].z });
-                        addPoint({ x: datas[i].x, y: datas[i].y, z: datas[i].z }, datas[i].shuzi + date);
+                        that.fileArr.push({
+                            x: datas[i].x,
+                            y: datas[i].y,
+                            z: datas[i].z
+                        });
+                        addPoint({
+                            x: datas[i].x,
+                            y: datas[i].y,
+                            z: datas[i].z
+                        }, datas[i].shuzi + date);
 
                         window.localStorage.setItem('BJD', JSON.stringify(that.fileArr));
                         window.localStorage.setItem('BJDarr', JSON.stringify(that.arr));
@@ -179,7 +200,10 @@
                     var a = Cesium.Cartesian3.fromDegrees(lng, lat, 200);
 
                     var px_position = Cesium.SceneTransforms.wgs84ToWindowCoordinates(that.map.scene, a);
-                    $('.sign-tian').css({ 'left': px_position.x - $('.sign-tian').innerWidth() / 2 + 'px', 'top': px_position.y - 310 + 'px' });
+                    $('.sign-tian').css({
+                        'left': px_position.x - $('.sign-tian').innerWidth() / 2 + 'px',
+                        'top': px_position.y - 310 + 'px'
+                    });
                 }
             }
 
@@ -233,7 +257,10 @@
                                     that.map.scene.postRender.addEventListener(moveDom);
                                     $('.sign-tian-hang-textarea').val('');
                                     $('.sign-tian').show();
-                                    $('.sign-tian').css({ 'left': movement.position.x - $('.sign-tian').innerWidth() / 2 + 'px', 'top': movement.position.y - 300 + 'px' });
+                                    $('.sign-tian').css({
+                                        'left': movement.position.x - $('.sign-tian').innerWidth() / 2 + 'px',
+                                        'top': movement.position.y - 300 + 'px'
+                                    });
                                     $('.sign_im_text').val($($('.wdbj')[i]).find('input').val()).attr('entityid', pick.id.id);
                                     $('.sign-tian-hang-textarea').val(that.arrQsrbz[i]);
                                     // 拖动该定位图标
@@ -241,10 +268,12 @@
                                         var leftDownFlag = false;
                                         var pointDraged = null;
                                         var viewer;
+
                                         function ConstructMoveEntity(options) {
                                             viewer = options.viewer;
                                             Init();
                                         }
+
                                         function Init() {
                                             // Select plane when mouse down  鼠标按下事件
                                             that.entityAll = handler.setInputAction(function (movement) {
@@ -273,7 +302,10 @@
                                                     if (pick.id.id) {
                                                         if (pick.id.id == $($('.wdbj')[that.ind]).find('input').attr('entitydataid')) {
                                                             $('.dragEdit').stop().show();
-                                                            $('.dragEdit').css({ 'left': movement.endPosition.x + 10 + 'px', 'top': movement.endPosition.y + 10 + 'px' });
+                                                            $('.dragEdit').css({
+                                                                'left': movement.endPosition.x + 10 + 'px',
+                                                                'top': movement.endPosition.y + 10 + 'px'
+                                                            });
                                                         }
                                                     }
                                                 } else {
@@ -282,7 +314,10 @@
                                                 if (leftDownFlag === true && pointDraged != null) {
                                                     $('.dragEdit').stop().hide();
                                                     $('.modifyEdit').stop().show();
-                                                    $('.modifyEdit').css({ 'left': movement.endPosition.x + 10 + 'px', 'top': movement.endPosition.y + 10 + 'px' });
+                                                    $('.modifyEdit').css({
+                                                        'left': movement.endPosition.x + 10 + 'px',
+                                                        'top': movement.endPosition.y + 10 + 'px'
+                                                    });
                                                     for (var j = 0; j < that.arr.length; j++) {
                                                         if (pointDraged.id.id == $($('.wdbj')[j]).find('input').attr('entitydataid')) {
                                                             var _ray = viewer.camera.getPickRay(movement.endPosition);
@@ -298,7 +333,9 @@
                                         };
                                         return ConstructMoveEntity;
                                     }();
-                                    var moveTool = MoveEntity({ 'viewer': that.map });
+                                    var moveTool = MoveEntity({
+                                        'viewer': that.map
+                                    });
                                 }
                             }
                         }
@@ -313,7 +350,10 @@
                     if (pick && pick.id) {
                         if (pick.id.id) {
                             $('.actEdit').stop().show();
-                            $('.actEdit').css({ 'left': moveEvent.endPosition.x + 10 + 'px', 'top': moveEvent.endPosition.y + 10 + 'px' });
+                            $('.actEdit').css({
+                                'left': moveEvent.endPosition.x + 10 + 'px',
+                                'top': moveEvent.endPosition.y + 10 + 'px'
+                            });
                         }
                     } else {
                         $('.actEdit').stop().hide();
@@ -507,6 +547,28 @@
             if (item == this.name) {
                 this.flag = true;
                 this.onOpen();
+                $('.jimu-widget-Sign').show();
+
+            }
+        },
+
+        onCloseSign: function (item) {
+            var that = this;
+            if (item == this.name && this.flag == true) {
+                this.flag = false;
+                $('.jimu-widget-Sign').hide();
+                for (var i = 0; i < that.arr.length; i++) {
+                    // if ($(this).parent().parent().next().find('.wdbj-shanchu')[i].className == 'wdbj-shanchu') {
+                    that.map.entities.removeById(that.arr[i]);
+                    $(this).parents('.sign-head').next().find('.wdbj').remove();
+                    that.arrDingWei = [];
+                    $($(this).parent().parent().next().find('.wdbj-shanchu').parent()[i]).remove();
+                    // }
+                }
+                if ($('.wdbj-shanchu').length == 0) {
+                    $('.sign-content-my').show();
+                }
+                that.onClose();
             }
         },
 
@@ -576,8 +638,7 @@
                 window.localStorage.setItem('BJDarr', JSON.stringify(that.arr));
                 if ($('.wdbj').length > 0) {
                     $('.sign-content-my').hide();
-                }
-                ;
+                };
             }
         },
 
@@ -603,4 +664,4 @@
         }
 
     });
-});
+});
\ No newline at end of file
diff --git a/widgets/SplitScreen/Widget.js b/widgets/SplitScreen/Widget.js
index 6450370..fab7e99 100644
--- a/widgets/SplitScreen/Widget.js
+++ b/widgets/SplitScreen/Widget.js
@@ -16,12 +16,11 @@
         return declare([BaseWidget], {
             baseClass: 'jimu-widget-SplitScreen',
             name: 'SplitScreen',
+            flag: false,
             startup: function () {
                 var that = this;
-                // 点击x隐藏面板
-                $('#viewportType').change(function () {
-
-                });
+                topic.subscribe("openSplitScreen", lang.hitch(this, this.openSplitScreen));
+                topic.subscribe("closeSplitScreen", lang.hitch(this, this.closeSplitScreen));
 
                 $('#viewportType').click(function () {
                     $(".split-select .split-select-option").toggle();
@@ -104,12 +103,37 @@
                 })
 
                 $('.jimu-widget-SplitScreen .close').click(function () {
-                    that.map.scene.multiViewportMode = Cesium.MultiViewportMode['NONE'];
-                    $('.jimu-widget-SplitScreen').hide();
+                    that.closeSplitScreen('closeSplitScreen')
                 });
 
             },
 
+            openSplitScreen: function (item) {
+                if (item == this.name) {
+                    this.flag = true;
+					$('.jimu-widget-SplitScreen').show();
+                }
+            },
+
+            closeSplitScreen: function (item) {
+                var that = this;
+                if (item == this.name) {
+                    if (this.flag = true) {
+                        this.flag = false;
+                        $('#viewportType span').text("不使用分屏");
+                        $("#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();
+                        that.map.scene.multiViewportMode = Cesium.MultiViewportMode['NONE'];
+                        $('.jimu-widget-SplitScreen').hide();
+                    }
+                }
+            },
+
             onOpen: function () {
 
             },
diff --git a/widgets/Tool/Widget.html b/widgets/Tool/Widget.html
index a03f82c..251b15d 100644
--- a/widgets/Tool/Widget.html
+++ b/widgets/Tool/Widget.html
@@ -10,8 +10,8 @@
 				<li class="sign-tool"><i></i> <span>我的标记</span></li>
 				<li class="CoorPosition-tool"><i></i> <span>坐标定位</span></li>
 				<li class="MapPrinting-tool"><i></i> <span>地图打印</span></li>
-				<li class="superposition-tool"><i></i> <span>叠加分析</span></li>
-				<li class="buffer-tool"><i></i> <span>缓冲分析</span></li>
+				<!-- <li class="superposition-tool"><i></i> <span>叠加分析</span></li>
+				<li class="buffer-tool"><i></i> <span>缓冲分析</span></li> -->
 			</ul>
 		</div>
 	</div>
diff --git a/widgets/Tool/Widget.js b/widgets/Tool/Widget.js
index cf99f21..6d79f73 100644
--- a/widgets/Tool/Widget.js
+++ b/widgets/Tool/Widget.js
@@ -39,78 +39,119 @@
 
 				// 图上量算
 				$('.measure-tool').click(function () {
-					$('.jimu-widget-Location').hide();
-					$('.jimu-widget-Measurement').show();
+
+					// 关闭卷帘
+					topic.publish('closeRolling', 'Rolling');
+					// 关闭分屏
+					topic.publish('closeSplitScreen', 'SplitScreen');
+					// 关闭标记
+					topic.publish('closeSign', 'Sign');
+					topic.publish('closeFlyRoute', 'FlyRoute');
 					$('.jimu-widget-Sign').hide();
-					$('.jimu-widget-FlyRoute').hide();
-					$('.jimu-widget-SplitScreen').hide();
-					$('.jimu-widget-DynamicRiver').hide();
-					$('.tool-y-box').toggle()
+					$('.jimu-widget-CoorPosition').hide();
+					$('.jimu-widget-MapPrinting').hide();
+
+					$('.jimu-widget-Measurement').show();
+
+					$('.tool-y-box').stop().hide();
+
 				})
-
-
 
 				// 卷帘对比
 				$('.rolling-tool').click(function () {
+
+					// 关闭量算
+					topic.publish('closeMeasurement', 'Measurement');
+					// 关闭分屏
+					topic.publish('closeSplitScreen', 'SplitScreen');
+					// 关闭标记
+					topic.publish('closeSign', 'Sign');
+					topic.publish('closeFlyRoute', 'FlyRoute');
+					$('.jimu-widget-CoorPosition').hide();
+					$('.jimu-widget-MapPrinting').hide();
+
 					topic.publish('openRolling', 'Rolling');
-					$('.jimu-widget-Location').hide();
-					$('.jimu-widget-Rolling').show();
-					$('.jimu-widget-Measurement').hide();
-					$('.jimu-widget-FlyRoute').hide();
-					$('.jimu-widget-SplitScreen').hide();
-					$('.jimu-widget-DynamicRiver').hide();
-					$('.tool-y-box').toggle();
+
+					$('.tool-y-box').stop().hide();
+
+				})
+
+				// 分屏对比
+				$('.splitScreen-tool').click(function () {
+					// 关闭量算
+					topic.publish('closeMeasurement', 'Measurement');
+					// 关闭卷帘
+					topic.publish('closeRolling', 'Rolling');
+					// 关闭标记
+					topic.publish('closeSign', 'Sign');
+					topic.publish('closeFlyRoute', 'FlyRoute');
+					$('.jimu-widget-CoorPosition').hide();
+					$('.jimu-widget-MapPrinting').hide();
+
+					topic.publish('openSplitScreen', 'SplitScreen');
+
+					$('.tool-y-box').stop().hide();
 				})
 
 				// 我的标记
 				$('.sign-tool').click(function () {
+
+					// 关闭量算
+					topic.publish('closeMeasurement', 'Measurement');
+					// 关闭卷帘
+					topic.publish('closeRolling', 'Rolling');
+					// 关闭分屏
+					topic.publish('closeSplitScreen', 'SplitScreen');
+					topic.publish('closeFlyRoute', 'FlyRoute');
+					$('.jimu-widget-CoorPosition').hide();
+					$('.jimu-widget-MapPrinting').hide();
+
 					topic.publish('openSign', 'Sign');
-					$('.jimu-widget-Location').hide();
-					$('.jimu-widget-Sign').show();
-					$('.jimu-widget-Measurement').hide();
-					$('.jimu-widget-FlyRoute').hide();
-					$('.jimu-widget-SplitScreen').hide();
-					$('.jimu-widget-DynamicRiver').hide();
-					$('.tool-y-box').toggle()
+
+					$('.tool-y-box').stop().hide();
+
 				})
 
 				// 坐标定位
 				$('.CoorPosition-tool').click(function () {
+
+					// 关闭量算
+					topic.publish('closeMeasurement', 'Measurement');
+					// 关闭卷帘
+					topic.publish('closeRolling', 'Rolling');
+					// 关闭分屏
+					topic.publish('closeSplitScreen', 'SplitScreen');
+					// 关闭标记
+					topic.publish('closeSign', 'Sign');
+					topic.publish('closeFlyRoute', 'FlyRoute');
+					$('.jimu-widget-MapPrinting').hide();
 					$('.jimu-widget-CoorPosition').show();
-					$('.jimu-widget-Location').hide();
-					$('.jimu-widget-Measurement').hide();
-					$('.jimu-widget-Sign').hide();
-					$('.jimu-widget-FlyRoute').hide();
-					$('.jimu-widget-SplitScreen').hide();
-					$('.jimu-widget-DynamicRiver').hide();
-					$('.tool-y-box').toggle()
+
+					$('.tool-y-box').stop().hide();
+
 				})
 
 
 				// 地图打印
 				$('.MapPrinting-tool').click(function () {
-					$('.jimu-widget-Location').hide();
-					$('.jimu-widget-MapPrinting').show();
+
+					// 关闭量算
+					topic.publish('closeMeasurement', 'Measurement');
+					// 关闭卷帘
+					topic.publish('closeRolling', 'Rolling');
+					// 关闭分屏
+					topic.publish('closeSplitScreen', 'SplitScreen');
+					// 关闭标记
+					topic.publish('closeSign', 'Sign');
+					topic.publish('closeFlyRoute', 'FlyRoute');
 					$('.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()
+					$('.jimu-widget-MapPrinting').show();
+
+					$('.tool-y-box').stop().hide();
+
 				})
 
-				// 分屏对比
-				$('.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()
-				})
+
 
 			},
 
diff --git a/widgets/Tool/css/style.css b/widgets/Tool/css/style.css
index b3520a6..9816062 100644
--- a/widgets/Tool/css/style.css
+++ b/widgets/Tool/css/style.css
@@ -9,7 +9,7 @@
   border-radius: 6px 0 0 6px;
   text-align: center;
   cursor: pointer;
-  z-index: 10 !important;
+  z-index: 1111 !important
 }
 
 .jimu-widget-Tool .tool-bar {
diff --git a/widgets/visualAngle/Widget.js b/widgets/visualAngle/Widget.js
index 2eb5e8f..8d32cbb 100644
--- a/widgets/visualAngle/Widget.js
+++ b/widgets/visualAngle/Widget.js
@@ -31,6 +31,7 @@
 				// 暴露在外的接口
 				var that = this;
 				$(".v-a-One").click(function () {
+					topic.publish('closeFlyRoute', 'FlyRoute');
 					$(this).addClass('on').siblings().removeClass('on');
 					// 控制视角平移:
 					that.map.scene.screenSpaceCameraController.enableRotate = true;
@@ -55,22 +56,26 @@
 
 				})
 				$(".v-a-Two").click(function () {
-
 					$(this).addClass('on').siblings().removeClass('on');
+					// 关闭量算
+					topic.publish('closeMeasurement', 'Measurement');
+					// 关闭卷帘
+					topic.publish('closeRolling', 'Rolling');
+					// 关闭分屏
+					topic.publish('closeSplitScreen', 'SplitScreen');
+					// 关闭标记
+					topic.publish('closeSign', 'Sign');
 					// 飞行路线
-
-					$('.jimu-widget-Location').hide();
-					$('.jimu-widget-MapPrinting').hide();
 					$('.jimu-widget-CoorPosition').hide();
-					$('.jimu-widget-Measurement').hide();
-					$('.jimu-widget-Sign').hide();
-					$('.jimu-widget-DynamicRiver').hide();
-					$('.jimu-widget-SplitScreen').hide();
-					$('.tool-y-box').stop().hide()
-					$('.jimu-widget-FlyRoute').show();
+					$('.jimu-widget-MapPrinting').hide();
+
+					topic.publish('openFlyRoute', 'FlyRoute');
+
+					$('.tool-y-box').stop().hide();
 
 				})
 				$(".v-a-Three").click(function () {
+					topic.publish('closeFlyRoute', 'FlyRoute');
 					$(this).addClass('on').siblings().removeClass('on');
 					that.map.scene.screenSpaceCameraController.enableRotate = false
 					that.map.scene.screenSpaceCameraController.enableZoom = true

--
Gitblit v1.9.3