MCPcopy Create free account
hub / github.com/computationalpathologygroup/ASAP / setCoverage

Method setCoverage

ASAP/TileManager.cpp:249–270  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

247}
248
249void TileManager::setCoverage(unsigned int level, int tile_x, int tile_y, unsigned char covers) {
250 _coverage[level][tile_x][tile_y] = covers;
251 if (_coverageMaps.empty()) {
252 _coverageMaps.resize(_lastRenderLevel + 1);
253 }
254 if (level != _lastRenderLevel) {
255 if (covers == 2 || covers == 0) {
256 float rectSize = _tileSize / (_levelDownsamples[_lastRenderLevel] / _levelDownsamples[level]);
257 QPainterPath rect;
258 rect.addRect(QRectF(tile_x * rectSize - 1, tile_y * rectSize - 1, rectSize + 1, rectSize + 1));
259 if (covers == 2) {
260 _coverageMaps[level] = _coverageMaps[level].united(rect);
261 }
262 else if (covers == 0) {
263 if (_coverageMapCacheMode) {
264 _coverageMaps[level] = _coverageMaps[level].subtracted(rect);
265 }
266 }
267 }
268 }
269 emit coverageUpdated();
270}
271
272std::vector<QPainterPath> TileManager::getCoverageMaps() {
273 return _coverageMaps;

Callers

nothing calls this directly

Calls 1

emptyMethod · 0.80

Tested by

no test coverage detected