# File lib/rubygame/gfx.rb, line 417 def rotozoom( angle, zoom, smooth=false ) smooth = smooth ? 1 : 0 surf = case zoom when Array zx, zy = zoom.collect { |n| n.to_f } SDL::Gfx.rotozoomSurfaceXY(@struct, angle, zx, zy, smooth) when Numeric zoom = zoom.to_f SDL::Gfx.rotozoomSurface(@struct, angle, zoom, smooth) else raise ArgumentError, "Invalid zoom factor: #{zoom.inspect}" end if( surf.pointer.null? ) raise( Rubygame::SDLError, "Rotozoom failed: " + SDL.GetError() ) end return self.class.new(surf) end