@@ -26,6 +26,7 @@ import { makeInner } from '../../util/model';
2626import SeriesModel from '../../model/Series' ;
2727import Group from 'zrender/src/graphic/Group' ;
2828import { enterBlur , leaveBlur } from '../../util/states' ;
29+ import { traverseUpdateZ , retrieveZInfo } from '../../util/graphic' ;
2930
3031const inner = makeInner < {
3132 keep : boolean
@@ -65,6 +66,8 @@ abstract class MarkerView extends ComponentView {
6566 markerGroupMap . each ( item => {
6667 ! inner ( item ) . keep && this . group . remove ( item . group ) ;
6768 } ) ;
69+
70+ updateZ ( ecModel , markerGroupMap , this . type as 'markPoint' | 'markLine' | 'markArea' ) ;
6871 }
6972
7073 markKeep ( drawGroup : MarkerDraw ) {
@@ -96,4 +99,25 @@ abstract class MarkerView extends ComponentView {
9699 ) : void ;
97100}
98101
102+ function updateZ (
103+ ecModel : GlobalModel ,
104+ markerGroupMap : HashMap < MarkerDraw > ,
105+ type : 'markPoint' | 'markLine' | 'markArea'
106+ ) : void {
107+ ecModel . eachSeries ( seriesModel => {
108+
109+ const markerModel = MarkerModel . getMarkerModelFromSeries (
110+ seriesModel ,
111+ type
112+ ) ;
113+
114+ const markerDraw = markerGroupMap . get ( seriesModel . id ) ;
115+
116+ if ( markerModel && markerDraw && markerDraw . group ) {
117+ const { z, zlevel } = retrieveZInfo ( markerModel ) ;
118+ traverseUpdateZ ( markerDraw . group , z , zlevel ) ;
119+ }
120+ } ) ;
121+ }
122+
99123export default MarkerView ;
0 commit comments