MCPcopy Create free account
hub / github.com/Kitware/VTK / updateZoomFromWheel

Method updateZoomFromWheel

Web/Python/vtkmodules/web/protocols.py:155–174  ·  view source on GitHub ↗
(self, event)

Source from the content-addressed store, hash-verified

153
154 @exportRpc("viewport.mouse.zoom.wheel")
155 def updateZoomFromWheel(self, event):
156 if "Start" in event["type"]:
157 self.getApplication().InvokeEvent("StartInteractionEvent")
158
159 renderWindow = self.getView(event["view"])
160 if renderWindow and "spinY" in event:
161 zoomFactor = 1.0 - event["spinY"] / 10.0
162
163 camera = renderWindow.GetRenderers().GetFirstRenderer().GetActiveCamera()
164 fp = camera.GetFocalPoint()
165 pos = camera.GetPosition()
166 delta = [fp[i] - pos[i] for i in range(3)]
167 camera.Zoom(zoomFactor)
168
169 pos2 = camera.GetPosition()
170 camera.SetFocalPoint([pos2[i] + delta[i] for i in range(3)])
171 renderWindow.Modified()
172
173 if "End" in event["type"]:
174 self.getApplication().InvokeEvent("EndInteractionEvent")
175
176
177# =============================================================================

Callers

nothing calls this directly

Calls 11

InvokeEventMethod · 0.80
getViewMethod · 0.80
GetActiveCameraMethod · 0.80
GetFirstRendererMethod · 0.80
GetRenderersMethod · 0.80
rangeClass · 0.50
getApplicationMethod · 0.45
GetPositionMethod · 0.45
ZoomMethod · 0.45
SetFocalPointMethod · 0.45
ModifiedMethod · 0.45

Tested by

no test coverage detected