/////////////////////////////////////////////////////////////////////////// // Copyright © 2019 zhongsong. All Rights Reserved. // 模块描述:显示坐标 /////////////////////////////////////////////////////////////////////////// define([ 'dojo/_base/declare', 'dojo/_base/lang', 'dojo/_base/array', 'dojo/_base/html', 'dojo/topic', 'jimu/BaseWidget', 'jimu/utils', 'jimu/css!libs/zTree_v3/css/zTreeStyle/zTreeStyle.css', 'libs/zTree_v3/js/jquery.ztree.all' ], function (declare, lang, array, html, topic, BaseWidget, aspect, string, utils ) { return declare([BaseWidget], { baseClass: 'jimu-widget-spatialAnalysis', name: 'spatialAnalysis', layers: {}, startup: function () { var that = this; // 暴露在外的接口 topic.subscribe("closeOnceUse", lang.hitch(this, this.closeOnceUse)); function createTooltip(frameDiv) {//抄录createTooltip函数 var tooltip = function (frameDiv) { var div = document.createElement('DIV'); div.className = "twipsy right"; var arrow = document.createElement('DIV'); arrow.className = "twipsy-arrow"; div.appendChild(arrow); var title = document.createElement('DIV'); title.className = "twipsy-inner"; div.appendChild(title); this._div = div; this._title = title; this.message = ''; // add to frame div and display coordinates frameDiv.appendChild(div); var that = this; div.onmousemove = function (evt) { that.showAt({ x: evt.clientX, y: evt.clientY }, that.message); }; }; tooltip.prototype.setVisible = function (visible) { this._div.style.display = visible ? 'block' : 'none'; }; tooltip.prototype.showAt = function (position, message) { if (position && message) { this.setVisible(true); this._title.innerHTML = message; this._div.style.left = position.x + 10 + "px"; this._div.style.top = (position.y - this._div.clientHeight / 2) + "px"; this.message = message; } }; return new tooltip(frameDiv); } window.MYcreateTooltip = createTooltip;//全局使用 var domHtmls = [//默认 { name: '可视分析', classs: 'visibleArea-tool', img: './images/addL/ksy.png' }, { name: '剖面分析', classs: 'profileAnalysis-tool', img: './images/addL/剖面分析.png' } // , {//做好静态, // name: '建造实体', // classs: 'modelDiagram-tool', // img: './images/addL/pdpx.png' // } // , {//https://blog.csdn.net/supermapsupport/article/details/100134590 // //需要iServer发布成三维服务 // name: '坡度分析', // classs: 'slope-tool', // img: './images/addL/pdpx.png' // } // , {//SQL查询,//做好 // name: 'SQL查询', // classs: 'SQLQuery-tool', // img: './images/addL/pdpx.png' // } , {//地形开挖,//做好 name: '地形开挖', classs: 'digTheEarth-tool', img: './images/addL/pdpx.png' } // , {//方量分析//做好 // name: '方量分析', // classs: 'volumeAnalysis-tool', // img: './images/addL/pdpx.png' // } ]; that.beginSpatialAnalysis(domHtmls); var isit = false; $('.ccsliu').dblclick(() => {//测试开关 点击图例其他的图片 if (isit) { var domHtmls2 = [ { name: '可视分析', classs: 'visibleArea-tool', img: './images/addL/ksy.png' }, { name: '剖面分析', classs: 'profileAnalysis-tool', img: './images/addL/剖面分析.png' } , {//https://blog.csdn.net/supermapsupport/article/details/100134590 //需要iServer发布成三维服务 name: '坡度分析', classs: 'slope-tool', img: './images/addL/pdpx.png' } , {//做好静态, name: '建造实体', classs: 'modelDiagram-tool', img: './images/addL/pdpx.png' } , {//SQL查询,//做好 name: 'SQL查询', classs: 'SQLQuery-tool', img: './images/addL/pdpx.png' } , {//地形开挖,//做好 name: '地形开挖', classs: 'digTheEarth-tool', img: './images/addL/pdpx.png' }, {//方量分析//做好 name: '方量分析', classs: 'volumeAnalysis-tool', img: './images/addL/pdpx.png' } , {//建造模型 name: '建造模型', classs: 'modesssssllll', img: './images/addL/pdpx.png' } , {//清除模型 name: '清除模型', classs: 'modesssss2222', img: './images/addL/pdpx.png' } ]; that.beginSpatialAnalysis(domHtmls2); var promise = false; $('.modesssssllll').click(() => { var URL_CONFIG = { SCENE_CBD: 'http://www.supermapol.com/realspace/services/3D-CBDCache20200416/rest/realspace', } promise = this.map.scene.open(URL_CONFIG.SCENE_CBD); }) $('.modesssss2222').click(() => { if (promise) { Cesium.when(promise, function (layer) { for (var i = 0; i < layer.length; i++) { that.map.scene.layers.remove(layer[i].name) } }) } }) } else { that.beginSpatialAnalysis(domHtmls); } isit = !isit; }) }, beginSpatialAnalysis: function (domHtmls) { var that = this; var domHtmls = domHtmls; var dom = $('#spatialAnalysis-mains'); dom.empty(); var str = '