C ++缩放图形内容

时间:2012-12-29 22:47:49

标签: c++ sdl

我正在尝试制作一个处理图形的程序,我不太确定如何实现缩放。我通过缩小它们来对原始形状(如线条和圆形(使用SDL_gfxPrimitives))进行了缩放效果,但这对于图片不起作用。我该如何实现缩放?

2 个答案:

答案 0 :(得分:2)

您的问题不够具体,无法提供可能为您提供所需内容的具体答案。

我能为您提供的建议是您首先想出一种表示缩放的方法。

如果你已经知道如何绘制一张图片,请考虑一下这样一个事实:当涉及到计算机图形时,几乎总是会出现“放大”或“缩小”的情况。而不是以逐渐变大或变小的尺寸绘制图片。

考虑到这一点,也许你会开始看到一种合理的方式来表示缩放的概念是使用某种形式的Camera类,它将明确地确定你绘制的图片的大小和位置。 / p>

答案 1 :(得分:2)

有一个支持缩放的SDL库:

SDL2_gfx Library

  

SDL_gfx库是从SDL_gfxPrimitives代码演变而来的   提供了基本的绘图程序,如直线,圆或多边形和   SDL_rotozoom为SDL实现了插值旋转异构体   表面。

     
    

SDL_gfx库的当前组件是:

         
        
  • 图形基元(SDL_gfxPrimitves.h)
  •     
  • Rotozoomer(SDL_rotozoom.h)
  •     
  • 帧率控制(SDL_framerate.h)
  •     
  • MMX图像过滤器(SDL_imageFilter.h)
  •     
  • 自定义Blit函数(SDL_gfxB​​litFunc.h)
  •