• 软件测试技术
  • 软件测试博客
  • 软件测试视频
  • 开源软件测试技术
  • 软件测试论坛
  • 软件测试沙龙
  • 软件测试资料下载
  • 软件测试杂志
  • 软件测试人才招聘
    暂时没有公告

字号: | 推荐给好友 上一篇 | 下一篇

使用Scanline属性来把图象旋转任意的角度

发布: 2008-5-19 10:34 | 作者: 不详 | 来源: http://bluemoon.diy.myrice.com/efg | 查看: 329次 | 进入软件测试论坛讨论

领测软件测试网


        RowRotated[i] := RowOriginal[iOriginal]
      END
      ELSE BEGIN
        RowRotated[i].rgbtBlue := 255; // assign "corner" color
        RowRotated[i].rgbtGreen := 0;
        RowRotated[i].rgbtRed := 0
     END

    END
  END
END {RotateBitmapMethod1}; 

在这个程序的原始版本中,我花了很大的力气来用像素的中心来定义像素的位置。METHOD 2 中使用(i+0.5,j+0.5)的位置作为像素(i,j)的位置,然后用上面“相反”的方法来查找。METHOD 3 就像 METHOD 2一样,但是却试图使用了共多的整数来计算。假如你对坐标(i+0.5,j+0,5)乘以2,你就可以在(2i+1,2j+1)的空间上工作。METHOD 3很有效但要比METHOD 2复杂——很不幸,它却是程序必须涉及到的部分。这一点会让人糊涂,所以我重做了这个实验来表示“简单”的方法。时间的不同并不能作为METHOD 1-3之间的显著差别。

24位色的位图的旋转会有一些不显著的变化,如果是一般的图片你或许就无法分辨出来,但是如果是边和线条分明的图像,你就会察觉了。为了减少这样的改变,我们加入了一个双线形的部分来提高现在的算法,这样可以获得比较接近的像素点(但这也会更慢)。

想要获得旋转位图的更好的方法(会更慢的),你可以看看“高速旋转图像,”在计算机显示,图像和图像处理方面。"High Accuracy Rotation of Images," in Computer Vision, Graphics and Image Processing, Vol.54, No. 4, July 1992, pp.340-344.

延伸阅读

文章来源于领测软件测试网 https://www.ltesting.net/


关于领测软件测试网 | 领测软件测试网合作伙伴 | 广告服务 | 投稿指南 | 联系我们 | 网站地图 | 友情链接
版权所有(C) 2003-2010 TestAge(领测软件测试网)|领测国际科技(北京)有限公司|软件测试工程师培训网 All Rights Reserved
北京市海淀区中关村南大街9号北京理工科技大厦1402室 京ICP备10010545号-5
技术支持和业务联系:info@testage.com.cn 电话:010-51297073

软件测试 | 领测国际ISTQBISTQB官网TMMiTMMi认证国际软件测试工程师认证领测软件测试网