|
|

楼主 |
发表于 2008-4-14 19:21:00
|
显示全部楼层
Re:[免费开源] 我的2D引擎 跨平台 任何图形设备(2d/3d)均可
重要说明:
例子:一张100*100的BMP图,其坐标范围是,(0,0)-(99,99)
对ISurf接口的用户的说明:
// 只保证水平(垂直)绘制出的像素数 == w(h),如果没有剪裁
// 而不用管用户按照何种公式计算 w(h)
virtual void Blt(POS xdest,POS ydest,ISurf *surf,POS xsrc,POS ysrc,POS w,POS h,
ALPHA lpha=255,Bool bHasColorKey=True)=0;
对使用gdi,ddraw实现ISurf接口的程序员的说明:
// gdi,ddraw将对x2减去1,故已知w,h计算gdi,ddraw参数有3种方法可以选择:
// 1 - 先按正确方法(w=x2-x1+1)计算最终的 x2,最后把 x2+1 传入
// 2 - 先按正确方法(w=x2-x1+1)计算最终的 w ,最后把 x1+w 传入
// 3 - 整个计算过程中的各坐标均按照错误的计算式( w=x2-x1 )
--------------------------------------------------------------------------------------
不论怎样,我的接口函数中,使用的形参是w,h而不是x2,y2,这样,不会引起任何混淆!
至于用户如何计算w,h,那是用户的事情,用户给我多少w,我就绘制多少w的像素(如果没有剪裁)
--------------------------------------------------------------------------------------
|
|