关闭

Android移植的Box2D

739人阅读 评论(0) 收藏 举报
本文介绍了移植 Box2D 到 Android 的过程,给出了具体的移植方法和设计思路。                        
简介将Box2D移植到Android上。Android的SDK是基于Java的。
JBox2D已经将Box2D移植到Java了,但在图形方面,它采用了Processing 库,我们需要做的就是将JBox2D的图形渲染部分在Android上实现。

JBox2D 分析

JBox2D Testbed 类图
设计所有的绘制都在一个 View 中完成,我们需要设计一个 View,它从 Android 的 View 类继承而来,在 onDraw 函数中完成绘制操作;
DebugDraw 是图形渲染的基类,不必修改。我们要做的主要是实现 DebugDraw 的一个子类,用 Android SDK 来实现从 DebugDraw 继承来的绘制接口。
在 AndroidDebugDraw 中实现放一个 mBitmap ,AndroidDebugDraw 先绘制到 Bitmap 上,在 View 中将该 Bitmap 贴到屏幕上。
public void onDraw(Canvas canvas) {

    /* Get bitmap object of AndroidDebugDraw*/
    Bitmap bmp = ((AndroidDebugDraw)g).mBitmap;
    /* Erase backgroud. */
    bmp.eraseColor(0);

    /* Step and draw the word */
    currentTest.step ();

    /* Paint AndroidDebugDraw's bimtap to view */
    canvas.drawBitmap (bmp, 0, 0, myPaint);

    /* repaint the screen */
    invalidate ();
}

设计类图如下所示:

屏幕截图
Project website

原文出处:
http://www.linuxgraphics.cn/physics/android_port_of_box2d.html

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:96559次
    • 积分:1294
    • 等级:
    • 排名:千里之外
    • 原创:30篇
    • 转载:62篇
    • 译文:0篇
    • 评论:30条
    最新评论