怎么旋转位图(HBITMAP),高分请问
如何旋转位图(HBITMAP),高分请教如题,不知道有没有什么现成的函数?有什么好的资料吗?先谢谢了[解决办法]II
如何旋转位图(HBITMAP),高分请教
如题,
不知道有没有什么现成的函数?
有什么好的资料吗?
先谢谢了
[解决办法]
IImage
[解决办法]
旋转算法到处都是,你直接转DIB就行了。
[解决办法]
少人是因为你这问题实在没啥意思。
这种问题,在网上搜索一下,有几千个答案。
[解决办法]
没有现成的函数,算法和代码到处都有
[解决办法]
[解决办法]你用函数PlgBlt()你自己看看函数传入的3个POINT点参数不同就可以达到旋转的效果的 不过精确度一般
[解决办法][解决办法][解决办法]就是浮点换整数,内存换速度的优化技术,网上到处都是-_-0
1.对于0,90,180,270,360之类的角度,何必再去调用sin cos等函数计算位置?直接用整数值代替就行了,你不觉得调用数字计算比调用函数会快一点吗,何况要调用500x400x3次?
2.类似取sin(1)~sin(360)之类的公式,完全可以用一个360个元素的整数数组替代。浮点可采用近似整数值替代或者用更好的转整数算法。
3.内存操作优化。
4.流水线优化。
5.函数级优化
等等还有很多地方可以优化,没事多看书吧,写软件没看过内存及代码优化技术的书是不行的。
[解决办法]我把NBCOOL老大的话补充说明一下:)你就是用一张有360个元素的表代替SIN COS的运算,比如你求SIN(1)的话就直接查表了,而不是用math.h当中的SIN去算:)然后看下有关的资料是不是并根据相应的情况,看看到底是内存重要还是效率重要。做下优化。
另外提醒一下,尽量不要过于频繁的NEW DELETE,那样内存碎片太多,反而不好。
[解决办法]