| 309 | } |
| 310 | |
| 311 | void PathologyViewer::initializeImage(QGraphicsScene* scn, unsigned int tileSize, unsigned int lastLevel) { |
| 312 | unsigned int nrLevels = _img->getNumberOfLevels(); |
| 313 | std::vector<unsigned long long> lastLevelDimensions = _img->getLevelDimensions(lastLevel); |
| 314 | float lastLevelWidth = ((lastLevelDimensions[0] / tileSize) + 1) * tileSize; |
| 315 | float lastLevelHeight = ((lastLevelDimensions[1] / tileSize) + 1) * tileSize; |
| 316 | float longest = lastLevelWidth > lastLevelHeight ? lastLevelWidth : lastLevelHeight; |
| 317 | _sceneScale = 1. / _img->getLevelDownsample(lastLevel); |
| 318 | QRectF n((lastLevelDimensions[0] / 2) - 1.5*longest, (lastLevelDimensions[1] / 2) - 1.5*longest, 3 * longest, 3 * longest); |
| 319 | this->setSceneRect(n); |
| 320 | this->fitInView(QRectF(0, 0, lastLevelDimensions[0], lastLevelDimensions[1]), Qt::AspectRatioMode::KeepAspectRatio); |
| 321 | |
| 322 | _manager->loadAllTilesForLevel(lastLevel); |
| 323 | float maxDownsample = 1. / this->_sceneScale; |
| 324 | QRectF FOV = this->mapToScene(this->rect()).boundingRect(); |
| 325 | QRectF FOVImage = QRectF(FOV.left() / this->_sceneScale, FOV.top() / this->_sceneScale, FOV.width() / this->_sceneScale, FOV.height() / this->_sceneScale); |
| 326 | emit fieldOfViewChanged(FOVImage, _img->getBestLevelForDownSample(maxDownsample / this->transform().m11())); |
| 327 | while (_ioThread->numberOfJobs() > 0) { |
| 328 | } |
| 329 | } |
| 330 | |
| 331 | void PathologyViewer::initializeGUIComponents(unsigned int level) { |
| 332 | // Initialize the minimap |
nothing calls this directly
no test coverage detected