MCPcopy Index your code
hub / github.com/visgl/deck.gl / drawLayerGroup

Function drawLayerGroup

modules/mapbox/src/deck-utils.ts:118–158  ·  view source on GitHub ↗
(
  deck: Deck,
  map: Map,
  group: MapboxLayerGroup,
  renderParameters: any
)

Source from the content-addressed store, hash-verified

116}
117
118export function drawLayerGroup(
119 deck: Deck,
120 map: Map,
121 group: MapboxLayerGroup,
122 renderParameters: any
123): void {
124 if (!deck.isInitialized) {
125 return;
126 }
127
128 let {currentViewport} = deck.userData as UserData;
129 let clearStack: boolean = false;
130 if (!currentViewport) {
131 // This is the first layer drawn in this render cycle.
132 // Generate viewport from the current map state.
133 currentViewport = getViewport(deck, map, renderParameters);
134 (deck.userData as UserData).currentViewport = currentViewport;
135 clearStack = true;
136 }
137
138 if (!currentViewport) {
139 return;
140 }
141
142 deck._drawLayers('mapbox-repaint', {
143 viewports: [currentViewport],
144 layerFilter: params => {
145 if (deck.props.layerFilter && !deck.props.layerFilter(params)) {
146 return false;
147 }
148
149 const layer = params.layer as Layer<LayerOverlayProps>;
150 if (layer.props.beforeId === group.beforeId && layer.props.slot === group.slot) {
151 return true;
152 }
153 return false;
154 },
155 clearStack,
156 clearCanvas: false
157 });
158}
159
160export function getProjection(map: Map): 'mercator' | 'globe' {
161 const projection = map.getProjection?.();

Callers 1

renderMethod · 0.90

Calls 2

getViewportFunction · 0.70
_drawLayersMethod · 0.45

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…