OHIF / Viewers

OHIF zero-footprint DICOM viewer and oncology specific Lesion Tracker, plus shared extension packages

Home Page:https://docs.ohif.org/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

[Feature Request] Do not cache MPR

Greyxy opened this issue · comments

What feature or change would you like to see made?

When a study has multiple series, I find that MPR reconstruction for each series will cache the MPR result
However, when the number of MPR series is very large, MPR reconstruction for three or more series will cause a black screen, and then the page crashes without rendering

The console reports an error message
D:\dicom\ohif-latest\Viewers\node_modules@kitware\vtk.js\macros2.js:50 Error compiling shader '#version 300 es
#define attribute in
#define textureCube texture
#define texture2D texture
#define textureCubeLod textureLod
#define texture2DLod textureLod

#ifdef GL_FRAGMENT_PRECISION_HIGH
precision highp float;
precision highp int;
#else
precision mediump float;
precision mediump int;
#endif

/*=========================================================================

Program: Visualization Toolkit
Module: vtkPolyDataVS.glsl

Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
All rights reserved.
See Copyright.txt or http://www.kitware.com/Copyright.htm for details.

 This software is distributed WITHOUT ANY WARRANTY; without even
 the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
 PURPOSE.  See the above copyright notice for more information.

=========================================================================*/

attribute vec4 vertexDC;

out vec3 vertexVCVSOutput;
uniform mat4 PCVCMatrix;

uniform float dcxmin;
uniform float dcxmax;
uniform float dcymin;
uniform float dcymax;

void main()
{
// dcsmall is the device coords reduced to the
// x y area covered by the volume
vec4 dcsmall = vec4(
dcxmin + 0.5 * (vertexDC.x + 1.0) * (dcxmax - dcxmin),
dcymin + 0.5 * (vertexDC.y + 1.0) * (dcymax - dcymin),
vertexDC.z,
vertexDC.w);
vec4 vcpos = PCVCMatrix * dcsmall;
vertexVCVSOutput = vcpos.xyz/vcpos.w;
gl_Position = dcsmall;
}
':

Why should we prioritize this feature?

Can you provide a configuration item that allows MPR to be rebuilt when clicked on each series, and clear the cache of the last build to prevent memory overflow resulting in crashes