123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796 |
- /**
- * [ONEMAP.M.side_nav]
- * @return {[object]}
- */
- define([
- 'html!templates/sideNavMapControl',
- 'modDir/service/cartodbParse',
- 'css!styles/sideNavMapControl',
- 'modDir/gcms/gcmsEvents'
- ], function (tplSideNavMapControl, cartodbParseF) {
- /**
- * 模块数据 用于数据存储和外部调用
- * @type {Object}
- * 数据存放
- */
- var modValue = {
- currentOverLayerGuid: null,
- DEMguid: null
- }
- var status = {
- showSideNavMapControl: false,
- curMap2Dstatus: true,
- isAdd3d: false,
- sideNavLock: true
- }
- var overLayerOpacityControl;
- function init() {
- setLayout();
- bindEvent();
- setDixingList();
- //setIGList();
- subscribe();
- };
- function setLayout() {
- $(tplSideNavMapControl).appendTo($("#sideNav .cover-content"));
- if (ONEMAP.D.globalSettingData) {
- switch (ONEMAP.D.globalSettingData.baseMap2D.type) {
- case 1:
- $("#mapBaseLayerControl .choosemap .map-list li[mId='gm']").children('.biankuang').addClass('mapchoose');
- break;
- case 2:
- $("#mapBaseLayerControl .choosemap .map-list li[mId='gr']").children('.biankuang').addClass('mapchoose');
- $('#mapBaseLayerControl .show-name').show();
- $("#sideNavMapControl .abtn-show-name").addClass('active');
- break;
- case 3:
- $("#mapBaseLayerControl .choosemap .map-list li[mId='gt']").children('.biankuang').addClass('mapchoose');
- break;
- }
- }
- $("#sideNavMapControl .ii-body").mCustomScrollbar({
- scrollInertia: 1000
- });
- if (navigator.userAgent.toLowerCase().match(/chrome/) != null ||
- navigator.userAgent.toLowerCase().match(/firefox/) != null) {
- $('#map23dChangeNav .change_2d').remove();
- $('#map23dChangeNav .change_3d').remove();
- }
- }
- function layoutResize() {};
- function changemapStyle(mapStyle) {
- if (mapStyle == '2D') {
- if (!map23DData.display.map2D) {
- show2dMap();
- }
- }
- if (mapStyle == '3D') {
- if (!map23DData.display.map3D) {
- show3dMap();
- }
- }
- }
- function subscribe() {
- ONEMAP.C.publisher.subscribe(changemapStyle, 'layout::mapStyle');
- ONEMAP.C.publisher.subscribe(closeSideNav, 'layout::sideBar');
- ONEMAP.C.publisher.subscribe(closeSideNav, 'mapChange');
- ONEMAP.C.publisher.subscribe(controlPointShijing, 'mapChange23D');
- };
- function controlPointShijing(zoom) {
- if (zoom > 13) {
- $("#sideNavMapControl .abtn-show-pointshijing").show();
- } else {
- $("#sideNavMapControl .abtn-show-pointshijing").hide();
- $("#sideNavMapControl .abtn-show-pointshijing").removeClass('active');
- ONEMAP.C.publisher.publish('hide', 'pointShijing');
- }
- }
- function closeSideNav(options) {
- if (!status.sideNavLock) {
- $('#sideNavMapControl').hide();
- $('#mapLayerControl').removeClass('open');
- status.showSideNavMapControl = false;
- changeMapLayerControl();
- }
- };
- //地图导航栏图标变化
- function changeMapLayerControl() {
- return
- }
- function show2dMap() {
- map23DControl.show2D();
- //ONEMAP.C.publisher.publish('showGM', 'layout::mapStyle');
- $("#topBar .total-content .tools-tool23Dchange").removeClass('map3D')
- $("#topBar .total-content .tools-tool23Dchange").addClass('map2D');
- $($(".leaflet-control-scale-line")[0]).show();
- if (!status.curMap2Dstatus) {
- status.curMap2Dstatus = true;
- ONEMAP.M.toolsBar.layoutResize();
- $("#chooseBg .choosemap").removeClass('tDClass');
- }
- ONEMAP.C.publisher.publish('2d', 'change23D');
- map2DViewer.map.fire('mainLayer:addLayer');
- }
- function show3dMap() {
- $("#layerControlMenu").bind("mousemove", function () {
- if (parseFloat($(this).css("top")) > 0) {
- $(this).css("bottom", "auto");
- }
- })
- if (Detector.webgl) {
- map23DControl.show3D();
- } else {
- ONEMAP.C.publisher.publish({
- type: "warning",
- message: "本浏览器不支持webGL,请更换重试!"
- }, 'noteBar::add');
- return
- }
- //ONEMAP.C.publisher.publish('showGH', 'layout::mapStyle');
- $("#topBar .total-content .tools-tool23Dchange").removeClass('map2D')
- $("#topBar .total-content .tools-tool23Dchange").addClass('map3D');
- $($(".leaflet-control-scale-line")[0]).hide();
- if (!status.tdmapStatus) {
- modValue.mapChangeTimer = (new Date()).getTime();
- if (!status.isAdd3d) {
- ONEMAP.C.publisher.publish('3D', 'add3d');
- status.isAdd3d = true;
- }
- // setTimeout(function () {
- // // locaSpaceMap.attachEvent('FireSceneMouseMove', FireSceneMouseMove)
- // }, 2000)
- status.tdmapStatus = true;
- }
- if (status.curMap2Dstatus) {
- status.curMap2Dstatus = false;
- ONEMAP.M.toolsBar.layoutResize();
- $("#sideLink3dData").css({
- display: 'inline'
- });
- $("#chooseBg .choosemap").addClass('tDClass');
- $("#sideNavMapControl .abtn-show-DEMTD").show();
- }
- ONEMAP.C.publisher.publish('3d', 'change23D');
- }
- function bindEvent() {
- //单点实景控制
- $("#sideNavMapControl .abtn-show-pointshijing").bind('click', function () {
- if ($("#sideNavMapControl .abtn-show-pointshijing").hasClass('active')) {
- $("#sideNavMapControl .abtn-show-pointshijing").removeClass('active');
- ONEMAP.C.publisher.publish('hide', 'pointShijing');
- } else {
- $("#sideNavMapControl .abtn-show-pointshijing").addClass('active');
- ONEMAP.C.publisher.publish('show', 'pointShijing');
- };
- })
- //控制地图导航栏显隐
- $('#mapLayerControl').bind('click', function () {
- if (!status.showSideNavMapControl) {
- $('#sideNavMapControl').show();
- $(this).addClass('open');
- status.showSideNavMapControl = true;
- } else {
- $('#sideNavMapControl').hide();
- $(this).removeClass('open');
- status.showSideNavMapControl = false;
- }
- changeMapLayerControl();
- });
- //专题图层或重要目标与事件操作
- $(".userThematic-ii-header h4").bind('click', function () {
- $("#userThematic").show();
- $("#userIG").hide();
- $(".userThematic-ii-header").removeClass('nochoose');
- $(".userIG-ii-header").addClass('nochoose');
- })
- $(".userIG-ii-header h4").bind('click', function () {
- $("#userIG").show();
- $("#userThematic").hide();
- $(".userThematic-ii-header").addClass('nochoose');
- $(".userIG-ii-header").removeClass('nochoose');
- })
- $(".userThematic-ii-header .itemControl").bind('click', function () {
- $("#userThematic").show();
- $("#userThematic").find('.sectionbg').addClass('open');
- $("#userThematic").find('.linkContent').show();
- $(".userThematic-ii-header").removeClass('nochoose');
- $(".userIG-ii-header").addClass('nochoose');
- $("#userIG").find('.sectionbg').removeClass('open');
- $("#userIG").find('.linkContent').hide();
- $("#userIG").hide();
- })
- $(".userIG-ii-header .itemControl").bind('click', function () {
- $("#userIG").show();
- $("#userIG").find('.sectionbg').addClass('open');
- $("#userIG").find('.linkContent').show();
- $(".userThematic-ii-header").addClass('nochoose');
- $(".userIG-ii-header").removeClass('nochoose');
- $("#userThematic").find('.sectionbg').removeClass('open');
- $("#userThematic").find('.linkContent').hide();
- $("#userThematic").hide();
- })
-
- //显示2D
- $('#map23dChangeNav .change_2d').bind('click', function () {
- $(this).addClass('current');
- $('#map23dChangeNav .change_3d').removeClass('current');
- show2dMap();
- changeMapLayerControl();
- })
- //显示3D
- $('#map23dChangeNav .change_3d').bind('click', function () {
- $(this).addClass('current');
- $('#map23dChangeNav .change_2d').removeClass('current');
- show3dMap();
- changeMapLayerControl();
- })
- //显示经纬网
- $("#sideNavMapControl .abtn-show-STLayer").bind("click", function () {
- if ($(this).hasClass('active')) {
- ONEMAP.C.publisher.publish('hide', 'mapHolder::STLatLngLayer');
- $(this).removeClass('active');
- } else {
- ONEMAP.C.publisher.publish('show', 'mapHolder::STLatLngLayer');
- $(this).addClass('active');
- }
- });
- //显示地名层
- $("#sideNavMapControl .abtn-show-name").bind("click", function () {
- if ($(this).hasClass('active')) {
- map2DViewer.setDefaultTileLayer('gr');
- if (map3DViewer.inited && modValue.NAMEguid) {
- map3DViewer.layers[modValue.NAMEguid].Visible = false;
- }
- $(this).removeClass('active');
- } else {
- map2DViewer.setDefaultTileLayer('gr');
- if (map3DViewer.inited && modValue.NAMEguid) {
- map3DViewer.layers[modValue.NAMEguid].Visible = true;
- }
- $(this).addClass('active');
- }
- })
- //显示三维DEM
- $("#sideNavMapControl .abtn-show-DEMTD").bind("click", function () {
- if ($(this).hasClass('active')) {
- map3DViewer.layers[modValue.DEMguid].Visible = false;
- $(this).removeClass('active');
- } else {
- map3DViewer.layers[modValue.DEMguid].Visible = true;
- $(this).addClass('active');
- }
- })
- //专题地图更多
- $(".morethematicmap").bind("click", function () {
- require(['modDir/atlas/atlasList'], function (atlasList) {
- atlasList.init();
- });
- });
- //GCMS
- $("#sideNavMapControl .btn-gcms").bind("click", function () {
- require(['modDir/gcms/gcmsNav'], function (gcmsNav) {
- gcmsNav.init();
- });
- });
- //用户手册
- $("#sideNavMapControl .abtn-user-help").bind('click', function () {
- require(['modDir/user/userHelp'], function (userHelp) {
- userHelp.init();
- });
- });
- //海量地图库
- $("#sideNavMapControl .btn-atals-labrary").bind("click", function () {
- var windowOpen = window.open();
- var openUrl = onemapUrlConfig.atlasLibraryUrl;
- windowOpen.location = openUrl;
- });
- //更多专题地图
- $('.side-nav-map-control-content .info-content .abtn-more').bind('click', function () {
- //开启侧栏
- ONEMAP.C.publisher.publish('show', 'layout::sideBar');
- if ($(".userThematic-ii-header").hasClass('nochoose')) {
- require(['modDir/gcms/gcmsNav'], function (gcmsNav) {
- gcmsNav.init();
- });
- } else {
- require(['modDir/atlas/atlasList'], function (atlasList) {
- atlasList.init();
- });
- }
- });
- //登录系统
- $('#sideNavMapControl .login_in').bind('click', function () {
- ONEMAP.C.gotoLogin();
- });
- //退出系统
- $("#sideNavMapControl .login_out").bind('click', function () {
- ONEMAP.C.logout();
- });
- $("#sideNavMapControl .sideNavLock").bind('click', function () {
- if ($('#sideNavMapControl .sideNavLock').hasClass('close')) {
- $('#sideNavMapControl .sideNavLock').removeClass('close');
- status.sideNavLock = false;
- } else {
- $('#sideNavMapControl .sideNavLock').addClass('close');
- status.sideNavLock = true;
- }
- })
- //管理面板入口
- $('.manage-link .show-link').bind('click', function () {
- $('#manageLink').toggle('fast');
- });
- $('#manageLink .go-user-manage').bind('click', function () {
- $('#manageLink').toggle('fast');
- var windowOpen = window.open();
- var openUrl = onemapUrlConfig.userManageSiteUrl;
- windowOpen.location = openUrl;
- });
- $('#manageLink .go-gcms').bind('click', function () {
- $('#manageLink').toggle('fast');
- var windowOpen = window.open();
- var openUrl = onemapUrlConfig.gcmsSiteUrl;
- windowOpen.location = openUrl;
- });
- $('#manageLink .go-hmdms').bind('click', function () {
- $('#manageLink').toggle('fast');
- var windowOpen = window.open();
- var openUrl = onemapUrlConfig.hmdmsSiteUrl;
- windowOpen.location = openUrl;
- });
- }
- function FireSceneMouseMove(e, sender, x, y) {
- var point2d = locaSpaceMap.CreatePoint2d();
- point2d.SetValue(x, y);
- point2d = locaSpaceMap.Globe.ScreenToScene(point2d);
- var latlng = {
- lat: point2d.Y,
- lng: point2d.X
- };
- var nLatlng = L.Util.formatHMS(latlng);
- $('#pointInfo').empty().append('经度:' + nLatlng.lng + ' 纬度:' + nLatlng.lat);
- if ((new Date()).getTime() - modValue.mapChangeTimer > 6000) {
- modValue.mapChangeTimer = (new Date()).getTime();
- ONEMAP.C.publisher.publish({}, 'mapChange');
- ONEMAP.C.publisher.publish({}, 'layout::sideBar');
- }
- var cameraState = locaSpaceMap.Globe.CameraState;
- if (cameraState.Distance < 80000) {
- if (modValue.countryBoundaryLayer) {
- if (modValue.countryBoundaryLayer.Visible) {
- modValue.countryBoundaryLayer.Visible = false;
- modValue.provinceLayer.Visible = false;
- //map3DViewer.layers[modValue.boundaryGuid].Visible = false;
- }
- }
- } else {
- if (modValue.countryBoundaryLayer) {
- if (!modValue.countryBoundaryLayer.Visible) {
- modValue.countryBoundaryLayer.Visible = true;
- modValue.provinceLayer.Visible = true;
- //map3DViewer.layers[modValue.boundaryGuid].Visible = true;
- }
- }
- }
- }
- //添加地形图组
- function setDixingList() {
- var category = ONEMAP.D.globalSettingData.map2DThematicCategory;
- for (var i = 0; i < category.length; i++) {
- var liHtml = $('<section class="item"><div class="sectionbg"><span class="translate">' + category[i] + '</span></div></section>')
- var linkcontent = $('<ul class="linkContent" style="display:none"></ul>');
- $(ONEMAP.D.globalSettingData.map2DThematicSetting).each(function (index, el) {
- if (el.category === category[i]) {
- var thematicLink = $('<li class="item thematic-layer-link"><div class="linkLibg"></div><span class="translate">' + el.name + '</span></li>');
- thematicLink.bind('click', el, function (e) {
- if ($(this).hasClass('selected')) {
- removeCurrentOverLayer();
- $(this).removeClass('selected');
- if (ONEMAP.M.toolWeatherMap) {
- ONEMAP.M.toolWeatherMap.remove();
- }
- } else {
- if (ONEMAP.M.toolWeatherMap) {
- ONEMAP.M.toolWeatherMap.remove();
- }
- removeCurrentOverLayer();
- if (e.data.type === "weatherMap") {
- //获取云图图集列表数据
- var weatherData;
- $.ajax({
- type: 'get',
- dataType: 'jsonp',
- url: el.productUrl + '/production/product_category?production_id=' + el.guid,
- beforeSend: ONEMAP.V.loading.load(),
- success: function (data) {
- weatherData = data;
- //添加云图控件
- addWeatherControl(weatherData, e.data);
- },
- error: function (data) {
- //console.log("有点小失败");
- },
- completer: ONEMAP.V.loading.loaded()
- })
- $('#userThematicList .selected').removeClass('selected');
- $(this).addClass('selected');
- } else if (e.data.type === "thematicOrigin") {
- url2D = e.data.url + '/' + e.data.guid + '?l={z}&x={x}&y={y}';
- url3D = e.data.url + '/' + e.data.guid + '?z=%d&x=%d&y=%d';
- modValue.currentOverLayerGuid = map23DControl.tileLayer({
- action: 'add',
- layer: {
- url2D: url2D,
- url3D: url3D,
- imageType: 'png',
- name: e.data.name,
- minZoom: e.data.min_zoom || 1,
- maxZoom: e.data.max_zoom || 19,
- guid: e.data.guid
- }
- })
- //S 优化
- //添加图层透明度控件
- overLayerOpacityControl = new L.Control.LayerOpacity(
- map2DViewer.layers[modValue.currentOverLayerGuid], {
- showFavBtn: false,
- closeCallback: function () {
- removeCurrentOverLayer();
- $('#userThematicList .selected').removeClass('selected');
- }
- }
- ).addTo(map2DViewer.map);
- thematicControl(
- map2DViewer.layers[modValue.currentOverLayerGuid], {
- data: e.data,
- showFavBtn: false,
- closeCallback: function () {
- removeCurrentOverLayer();
- $('#userThematicList .selected').removeClass('selected');
- }
- })
- ONEMAP.D.overLayerCount++;
- map2DViewer.map.setZoomScope(e.data['min_zoom'], e.data['max_zoom']);
- map23DControl.setView({
- center: {
- lat: e.data['center'].lat,
- lng: e.data['center'].lng
- },
- zoom: e.data['zoom'],
- tilt: 0
- })
- $('#userThematicList .selected').removeClass('selected');
- $(this).addClass('selected');
- //E 优化
- } else if (e.data.type === "vectorOrigin") {
- var cartodbF = new cartodbParseF();
- cartodbF.getVizInfo({
- vizUrl: e.data['url']
- }, function (tileData) {
- var tdTileLayerUrl = tileData['templateUrl'].replace('{z}/{x}/{y}', '%d/%d/%d');
- modValue.currentOverLayerGuid = map23DControl.tileLayer({
- action: 'add',
- layer: {
- url2D: tileData['templateUrl'],
- url3D: tdTileLayerUrl,
- imageType: 'png',
- name: e.data.name,
- minZoom: e.data.min_zoom || 1,
- maxZoom: e.data.max_zoom || 19
- }
- })
- map2DViewer.layers[modValue.currentOverLayerGuid]['utfgrids'] = [];
- //添加utfgrid
- _.each(tileData.utfgridUrl, function (el, index) {
- var aGridLayer = new L.UtfGrid(el + '?callback={cb}');
- map2DViewer.layers[modValue.currentOverLayerGuid]['utfgrids'].push(aGridLayer);
- aGridLayer.layerNum = index;
- aGridLayer.on('click', function (e) {
- L.DomEvent.stopPropagation(e);
- if (e.data) {
- var layerNum = e.target._map._layers[e.target._leaflet_id].layerNum;
- $.ajax({
- url: tileData.serverApiUrl + '/v1/map/' + tileData.layergroupid + '/' + layerNum + '/attributes/' + e.data.cartodb_id,
- type: 'GET',
- dataType: 'jsonp'
- })
- .done(function (data) {
- if (data) {
- var popupContent = $('<div></div>');
- _.each(data, function (pel, pindex) {
- popupContent.append('<div><strong>' + pindex + '</strong>:' + pel + '</div>')
- });
- var popup = L.popup()
- .setLatLng(e.latlng)
- .setContent(popupContent.get(0))
- .openOn(map2DViewer.map);
- }
- });
- }
- });
- aGridLayer.addTo(map2DViewer.map);
- });
- //S 优化
- //添加图层透明度控件
- overLayerOpacityControl = new L.Control.LayerOpacity(
- map2DViewer.layers[modValue.currentOverLayerGuid], {
- showFavBtn: false,
- closeCallback: function () {
- if (map2DViewer.layers[modValue.currentOverLayerGuid]['utfgrids'].length > 0) {
- _.each(map2DViewer.layers[modValue.currentOverLayerGuid]['utfgrids'], function (lel) {
- map2DViewer.map.removeLayer(lel);
- });
- }
- removeCurrentOverLayer();
- $('#userThematicList .selected').removeClass('selected');
- }
- }
- ).addTo(map2DViewer.map);
- thematicControl(
- map2DViewer.layers[modValue.currentOverLayerGuid], {
- data: e.data,
- showFavBtn: false,
- closeCallback: function () {
- removeCurrentOverLayer();
- $('#userThematicList .selected').removeClass('selected');
- }
- })
- ONEMAP.D.overLayerCount++;
- map2DViewer.map.setZoomScope(e.data['min_zoom'], e.data['max_zoom']);
- map23DControl.setView({
- center: {
- lat: e.data['center'].lat,
- lng: e.data['center'].lng
- },
- zoom: e.data['zoom'],
- tilt: 0
- })
- $('#userThematicList .selected').removeClass('selected');
- $(this).addClass('selected');
- //E 优化
- });
- } else {
- var tdTileLayerUrl = e.data['url'].replace('?x={x}&y={y}&z={z}', '?z=%d&x=%d&y=%d');
- tdTileLayerUrl = tdTileLayerUrl.replace('?z={z}&x={x}&y={y}', '?z=%d&x=%d&y=%d');
- tdTileLayerUrl = tdTileLayerUrl.replace('{z}/{y}/{x}', '%d/%d/%d');
- modValue.currentOverLayerGuid = map23DControl.tileLayer({
- action: 'add',
- layer: {
- url2D: e.data['url'],
- url3D: tdTileLayerUrl,
- imageType: 'png',
- name: e.data.name,
- minZoom: e.data.min_zoom || 1,
- maxZoom: e.data.max_zoom || 19
- }
- })
- //S 优化
- //添加图层透明度控件
- overLayerOpacityControl = new L.Control.LayerOpacity(
- map2DViewer.layers[modValue.currentOverLayerGuid], {
- showFavBtn: false,
- closeCallback: function () {
- removeCurrentOverLayer();
- $('#userThematicList .selected').removeClass('selected');
- }
- }
- ).addTo(map2DViewer.map);
- thematicControl(
- map2DViewer.layers[modValue.currentOverLayerGuid], {
- data: e.data,
- showFavBtn: false,
- closeCallback: function () {
- removeCurrentOverLayer();
- $('#userThematicList .selected').removeClass('selected');
- }
- })
- ONEMAP.D.overLayerCount++;
- map2DViewer.map.setZoomScope(e.data['min_zoom'], e.data['max_zoom']);
- map23DControl.setView({
- center: {
- lat: e.data['center'].lat,
- lng: e.data['center'].lng
- },
- zoom: e.data['zoom'],
- tilt: 0
- })
- $('#userThematicList .selected').removeClass('selected');
- $(this).addClass('selected');
- //E 优化
- }
- }
- });
- thematicLink.appendTo(linkcontent);
- }
- });
- liHtml.find('.sectionbg').bind('click', function () {
- $(this).parent().find('.linkContent').toggle();
- if ($(this).hasClass('open')) {
- $(this).removeClass('open');
- } else {
- $(this).addClass('open');
- $(this).parent().siblings().find('.linkContent').hide();
- $(this).parent().siblings().find('.sectionbg').removeClass('open');
- }
- })
- linkcontent.appendTo(liHtml);
- liHtml.appendTo($("#userThematicList"));
- }
- $("#userThematicList section").eq(0).find('.linkContent').show();
- $("#userThematicList section").eq(0).find('.sectionbg').addClass('open');
- //更新滚动条
- $('#userThematic .ii-body').mCustomScrollbar('update');
- }
- //添加云图控件
- function addWeatherControl(weatherData, elData) {
- var weatherMapData = [];
- $.each(weatherData.category[0].list, function (i, t) {
- var itemData = {};
- itemData.datetime = t.name;
- itemData.layerUrl = elData.url + '/' + t.guid + '?z={z}&x={x}&y={y}'
- weatherMapData.push(itemData);
- })
- map23DControl.setView({
- center: {
- lat: elData['center'].lat,
- lng: elData['center'].lng
- },
- zoom: elData['zoom'],
- tilt: 0
- })
- require(['modDir/tools/toolWeatherMap'], function (toolWeatherMap) {
- toolWeatherMap.init({
- weatherMapData: weatherMapData
- });
- });
- }
- //添加三维专题图控制条
- function thematicControl(layer, options) {
- modValue.thematicControlHtml = $("<div class='thematicControl'>" +
- "<iframe frameborder='0' class='cover-iframe'></iframe>" +
- "</div>");
- var cover_content = $("<div class='cover-content'></div>");
- cover_content.appendTo(modValue.thematicControlHtml);
- if (options.showFavBtn || !options.onlyShow) {
- var optionsWrap = $("<div class='options-wrap'></div>");
- optionsWrap.appendTo(cover_content);
- }
- $("<div class='thematicName'>名称:" + options.data.name + "</div>").appendTo(cover_content);
- if (options.atlas) {
- var atlasHtml = $("<a class='info_Btntd'>详情</a>");
- atlasHtml.appendTo(optionsWrap);
- atlasHtml.bind('click', function () {
- });
- }
- if (options.showFavBtn) {
- var favBtnHtml = $("<a class='fav_abtntd'>收藏</a>");
- favBtnHtml.appendTo(optionsWrap);
- favBtnHtml.bind('click', function () {
- });
- }
- if (!options.onlyShow) {
- var closeBtnHtml = $("<a class='close_abtntd'>关闭</a>");
- closeBtnHtml.appendTo(optionsWrap);
- closeBtnHtml.bind('click', function () {
- options.closeCallback();
- modValue.thematicControlHtml.remove();
- })
- }
- modValue.thematicControlHtml.appendTo($('#thematicControlContent'));
- };
- function removeCurrentOverLayer() {
- if (modValue.currentOverLayerGuid) {
- modValue.thematicControlHtml.remove();
- map23DControl.tileLayer({
- action: 'remove',
- guid: modValue.currentOverLayerGuid
- })
- modValue.currentOverLayerGuid = null;
- map2DViewer.map.removeControl(overLayerOpacityControl);
- overLayerOpacityControl = null;
- }
- ONEMAP.D.overLayerCount--;
- if (ONEMAP.D.overLayerCount == 0) {
- map2DViewer.map.setZoomScope(1, 19);
- }
- }
- return ONEMAP.M.sideNav = {
- init: init,
- show3dMap: show3dMap,
- show2dMap: show2dMap,
- modValue: modValue
- };
- })
|