WAP之家:为您提供最全最新的WAP技术,CP.SP.3G等行业资讯。 WAP之家交流论坛全新开放 点击进入>>
WAP资讯 | 3G动态 | SP动态 | 运营商动态 | 内容商动态 | 制造商动态 | 论坛讨论>> 每次自动访问
WAP技术 | WAP源码 | 手机编程 | 手机源码 | 无线技术 | J2ME技术 | 手机软件 添加到收藏夹
IVR技术 | SP资料 | SMS MMS技术 | 商业方案 | IVR下载 | 书籍教程 | 工具软件 语言:繁體中文

WAP之家技术文章手机编程Win Mobile游戏开发手机游戏中的坐标处理方式--万能坐标值

手机游戏中的坐标处理方式--万能坐标值
作者:佚名  来源:本站整理  发布时间:2008-4-8 0:58:55

很多手机游戏开发人员经常遇到这样的一个问题,在屏幕上的某一坐标(28,36)上画一张图片(bg.bmp),当手机屏幕大小变化的时候如果还用(28,36)显然是不行的,那该怎么办呢`?
我请教过高手,他们的解决办法归纳一下的话有两种:

1.如果想贴着屏幕的下沿画一个图片,那就先求用 
ISHELL_GetDeviceInfo(app->m_pIShell, &deviceInfo);
screenX = deviceInfo.cxScreen;
screenY = deviceInfo.cyScreen;
求出屏幕的长和宽,然后用screenY减去图片的高度作为图片的纵坐标,这样就可以实现无论屏幕多大这张图片都会在屏幕的下沿了。
2.如果想在屏幕的中间靠上一点画一张图片,也是先求一下屏幕的长和宽,然后纵坐标取screenY *2/5这样也可以实现预期的目标。

但是上面的两种方法在屏幕上有很多东西要画的时候就会很乱,我总结了上述两种方法以后,自己发明了一种方法,我叫它“万能坐标值”

它的具体实现方法是:

首先,知道你现在用的模拟器的屏幕的大小,比如是:176*205,现在想画一个图片的坐标是(28,36),我们管它叫做母坐标值当屏幕大小有变化的时候比如变成了128*146,那么该怎么办呢`?
首先,也是求一下当前屏幕的长和宽,然后把坐标改成(28*screenX /176,36*screenY/205),这样的话,这个坐标的值会随着屏幕的大小而变化成一个适应当前屏幕的值,无论屏幕多大,它都好用,所以我给它起名叫“万能坐标值法”

这个方法也有一定的弊端,就是坐标值太过接近屏幕大小的时候,取好了一个母坐标值,然后屏幕变的很小很小以后,图片会显示不完整,解决办法也很简单,就是遇到大的坐标值的时候注意不要太接近屏幕大小,再一个就是在一个较小的屏幕上取母坐标值就会有效的避免这个问题。

[] [返回上一页] [打 印]
文章评论

用户名: 查看更多评论

分 值:100分 85分 70分 55分 40分 25分 10分 0分

内 容:

         (注“”为必填内容。) 验证码: 验证码,看不清楚?请点击刷新验证码