1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
| //键盘漫游
| // function controlStart(){
| // CesiumControl.create(this.viewer);
| // CesiumControl.init();
| // }
|
| // function controlEnd(){
| // CesiumControl.endControl();
| // }
|
| //图层控制
|
| var layerModel = {
| layers: [{
| 'type': 'baseMap',
| 'index':0,
| 'lists': [],
| 'upLayer': null,
| 'downLayer': null,
| 'selectLayer': null
| }, {
| 'type': 'terrain',
| 'index':1,
| 'lists': [],
| 'upLayer': null,
| 'downLayer': null,
| 'selectLayer': null
| }, {
| 'type': 'model',
| 'index':2,
| 'lists': [],
| 'upLayer': null,
| 'downLayer': null,
| 'selectLayer': null
| }, {
| 'type': 'project',
| 'index':3,
| 'lists': [],
| 'upLayer': null,
| 'downLayer': null,
| 'selectLayer': null
| }],
| isSelectableLayer: function (typeIndex, layer) {
| return this.layers[typeIndex].lists.indexOf(layer) >= 0;
| // return this.baseLayers.indexOf(layer) >= 0;
| },
| raise: function (typeIndex, layer, index) {
| // imageryLayers.raise(layer);//basemap的rise
| layerModel.layers[typeIndex].upLayer = layer;
| layerModel.layers[typeIndex].downLayer = layerModel.layers[typeIndex].lists[Math.max(0, index - 1)];
|
| // updateLayerList();
| window.setTimeout(function () {
| layerModel.layers[typeIndex].upLayer = layerModel.layers[typeIndex].downLayer = null;
| }, 10);
| },
| lower: function (typeIndex,layer, index) {
| // imageryLayers.lower(layer);
| layerModel.layers[typeIndex].upLayer =
| layerModel.layers[typeIndex].layers[
| Math.min(layerModel.layers[typeIndex].lists.length - 1, index + 1)
| ];
| layerModel.layers[typeIndex].downLayer = layer;
| // updateLayerList();
| window.setTimeout(function () {
| layerModel.layers[typeIndex].upLayer = layerModel.layers[typeIndex].downLayer = null;
| }, 10);
| },
| canRaise: function (typeIndex,layerIndex) {
| return layerIndex > 0;
| },
| canLower: function (typeIndex,layerIndex) {
| return layerIndex >= 0 && layerIndex < layerModel.layers[typeIndex].lists.length - 1;
| },
| hasType:function(type){
| for(let i in layerModel.layers){
| let layer = layerModel.layers[i];
| if(layer.type == type){
| return layer.index;
| }
| }
| return -1;
| },
| createLayer: function(type){
| if(layerModel.hasType(type)==-1){
| var layer = {
| 'type': type,
| 'index':layerModel.layers.length,
| 'lists': [],
| 'upLayer': null,
| 'downLayer': null,
| 'selectLayer': null
| };
| layerModel.layers.push(layer);
| return true;
| }
| return false;
| },
| find:function(node,indexes){
| if(indexes.length>1){
| return layerModel.find(node.list[indexes[0]],indexes.slice(1));
| }else{
| return node.list[indexes[0]];
| }
| },
| changeListStatus:function(node){
| if(node.list!=null&&node.list!=undefined){
| for(let i in node){
| this.changeListStatus(node[i].list);
| }
| }else{
| node.model.show = !node.model.show;
| }
| },
| changeStatus:function(indexes){
| let listindex = indexes[0];
| if(listindex>2){
| let node = layerModel.lists[listindex];
|
| }
| }
|
| };
|
|