477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
|
# File 'lib/VTK/gtk/GtkVTKRenderWindow.rb', line 477
def Zoom(x,y)
if @CurrentRenderer
renderer = @CurrentRenderer
camera = @CurrentCamera
zoomFactor = 1.02**(0.5*(@LastY - y))
@CurrentZoom = @CurrentZoom * zoomFactor
if camera.GetParallelProjection
parallelScale = camera.GetParallelScale/zoomFactor
camera.SetParallelScale(parallelScale)
else
camera.Dolly(zoomFactor)
renderer.ResetCameraClippingRange
end
@LastX = x
@LastY = y
self.Render
end
end
|