@@ -88,55 +88,45 @@ proto.update = function update(calcTrace) {
8888 var i , k , opts ;
8989 var hasCluster = ! ! ( trace . cluster && trace . cluster . enabled ) ;
9090 var hadCluster = ! ! this . clusterEnabled ;
91+ var lThis = this ;
9192
9293 function addCluster ( ) {
93- this . addSource ( 'circle' , optsAll . circle , trace . cluster ) ;
94+ lThis . addSource ( 'circle' , optsAll . circle , trace . cluster ) ;
9495 for ( i = 0 ; i < ORDER . cluster . length ; i ++ ) {
9596 k = ORDER . cluster [ i ] ;
9697 opts = optsAll [ k ] ;
97- this . addLayer ( k , opts , below ) ;
98+ lThis . addLayer ( k , opts , below ) ;
9899 }
99100 }
100101
101102 function removeCluster ( ) {
102103 for ( i = ORDER . cluster . length - 1 ; i >= 0 ; i -- ) {
103104 k = ORDER . cluster [ i ] ;
104- map . removeLayer ( this . layerIds [ k ] ) ;
105+ map . removeLayer ( lThis . layerIds [ k ] ) ;
105106 }
106- map . removeSource ( this . sourceIds . circle ) ;
107+ map . removeSource ( lThis . sourceIds . circle ) ;
107108 }
108109
109110 function addNonCluster ( ) {
110111 for ( i = 0 ; i < ORDER . nonCluster . length ; i ++ ) {
111112 k = ORDER . nonCluster [ i ] ;
112113 opts = optsAll [ k ] ;
113- this . addSource ( k , opts , trace . cluster ) ;
114- this . addLayer ( k , opts , below ) ;
114+ lThis . addSource ( k , opts , trace . cluster ) ;
115+ lThis . addLayer ( k , opts , below ) ;
115116 }
116117 }
117118
118119 function removeNonCluster ( ) {
119120 for ( i = ORDER . nonCluster . length - 1 ; i >= 0 ; i -- ) {
120121 k = ORDER . nonCluster [ i ] ;
121- map . removeLayer ( this . layerIds [ k ] ) ;
122- map . removeSource ( this . sourceIds [ k ] ) ;
122+ map . removeLayer ( lThis . layerIds [ k ] ) ;
123+ map . removeSource ( lThis . sourceIds [ k ] ) ;
123124 }
124125 }
125126
126- if ( hasCluster && ! hadCluster ) {
127- removeNonCluster ( ) ;
128- addCluster ( ) ;
129- } else if ( ! hasCluster && hadCluster ) {
130- removeCluster ( ) ;
131- addNonCluster ( ) ;
132- } else if ( below !== this . below ) {
133- if ( ! hasCluster && ! hadCluster ) {
134- removeNonCluster ( ) ;
135- addNonCluster ( ) ;
136- } else if ( hasCluster && hadCluster ) {
137- removeCluster ( ) ;
138- addCluster ( ) ;
139- }
127+ if ( hadCluster !== hasCluster || below !== this . below ) {
128+ if ( hadCluster ) removeCluster ( ) ; else removeNonCluster ( ) ;
129+ if ( hasCluster ) addCluster ( ) ; else addNonCluster ( ) ;
140130 } else {
141131 var order = hasCluster ? ORDER . cluster : ORDER . nonCluster ;
142132 for ( i = 0 ; i < order . length ; i ++ ) {
0 commit comments