MCPcopy Create free account
hub / github.com/MITK/MITK / Update

Method Update

Modules/Core/src/Rendering/mitkSurfaceVtkMapper2D.cpp:123–185  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

121}
122
123void mitk::SurfaceVtkMapper2D::Update(mitk::BaseRenderer *renderer)
124{
125 const mitk::DataNode *node = GetDataNode();
126
127 if (node == nullptr)
128 {
129 this->ResetMapper(renderer);
130 return;
131 }
132
133 bool visible = true;
134 node->GetVisibility(visible, renderer, "visible");
135
136 if (!visible)
137 {
138 this->ResetMapper(renderer);
139 return;
140 }
141
142 auto *surface = static_cast<mitk::Surface *>(node->GetData());
143
144 if (surface == nullptr)
145 {
146 this->ResetMapper(renderer);
147 return;
148 }
149
150 const auto* worldGeometry = renderer->GetWorldTimeGeometry();
151 const auto timeBounds = worldGeometry->GetTimeBounds(renderer->GetTimeStep());
152
153 if (!surface->GetTimeGeometry()->IsValidTimePoint(timeBounds[0]))
154 {
155 this->ResetMapper(renderer);
156 return;
157 }
158
159 // Calculate time step of the input data for the specified renderer (integer value)
160 this->CalculateTimeStep(renderer);
161
162 surface->UpdateOutputInformation();
163 LocalStorage *localStorage = m_LSH.GetLocalStorage(renderer);
164 localStorage->m_PropAssembly->VisibilityOn();
165
166 // check if something important has changed and we need to rerender
167 if ((localStorage->m_LastUpdateTime < node->GetMTime()) // was the node modified?
168 ||
169 (localStorage->m_LastUpdateTime < surface->GetPipelineMTime()) // Was the data modified?
170 ||
171 (localStorage->m_LastUpdateTime <
172 renderer->GetCurrentWorldPlaneGeometryUpdateTime()) // was the geometry modified?
173 ||
174 (localStorage->m_LastUpdateTime < renderer->GetCurrentWorldPlaneGeometry()->GetMTime()) ||
175 (localStorage->m_LastUpdateTime < node->GetPropertyList()->GetMTime()) // was a property modified?
176 ||
177 (localStorage->m_LastUpdateTime < node->GetPropertyList(renderer)->GetMTime()))
178 {
179 this->GenerateDataForRenderer(renderer);
180 }

Callers 1

Calls 13

ResetMapperMethod · 0.95
GetVisibilityMethod · 0.80
CalculateTimeStepMethod · 0.80
GetDataMethod · 0.45
GetTimeBoundsMethod · 0.45
GetTimeStepMethod · 0.45
IsValidTimePointMethod · 0.45
GetLocalStorageMethod · 0.45
GetMTimeMethod · 0.45
GetPropertyListMethod · 0.45

Tested by

no test coverage detected