`
izuoyan
  • 浏览: 9222237 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

在Mascot Capsule V3中围绕任意轴旋转

阅读更多

作者:merry 文章来源:http://www.j2medev.com/Article/ShowArticle.asp?ArticleID=764

Mascot Capsule V3里有一些让物体旋转的方法。这里我们讨论怎样使物体围绕任意轴旋转。

Mascot Capsule V3采用仿射变换矩阵使物体移动、缩放和旋转。它可以直接设置相关值,但是在这个例子中,我们将使用AffineTrans类里的rotation方法。

旋转应该始终设定在±2880度范围之内。在MascotCapsule中,4096就等于360度。

下面是一个关于使用仿射变换矩阵来处理旋转和平移的动态物体的例子。

Rotation

Rotation

Rotation

Translation

m00: (y),(z), (scaleX)

m01: (z)

m02: (y)

m03: (x)

m10: (z)

m11: (x), (z), (scaleY)

m12: (x)

m13: (y)

m20: (y)

m21: (x)

m22: (x), (y), (scaleZ)

m23: (z)

在该例中,我们使用一个主类transformation,该类被layout对象所引用。

layout = new FigureLayout();
trans = new AffineTrans();

trans.setIdentity();
layout.setAffineTrans( trans );

同时我们使用3个AffineTrans类的对象来做旋转:
rotationX = new AffineTrans();
rotationY = new AffineTrans();
rotationZ = new AffineTrans();

之所以使用好几个矩阵类是因为旋转方法只是简单的设定了矩阵中的适当值。对于同一个矩阵来说当每秒执行该旋转方法时就只是简单的覆盖掉前一个旋转的值。每一次旋转必须作用在单个的矩阵上,然后这些矩阵共同作用来产生最后的结果。

在主线程中,我们使这些矩阵相乘来达到平移的目的。

rotationX.rotationX(23);

rotationY.rotationY(23);

rotationZ.rotationZ(23);

trans.mul(rotationX);

trans.mul(rotationY);

trans.mul(rotationZ);

下载范例程序和源代码:

http://developer.sonyericsson.com/getDocument.do?docId=71222

原文地址:点击这里

原文地址:点击这里

分享到:
评论

相关推荐

    JSR184规范封装照相机的lookat方法

    而Mascot Capsule v3依靠”look-at”方法,这是在某些3D API里的通用方法。look-at方法从一个position,一个 look-at direction和一个up vector创建一个照相机转换矩阵,为了方便Mascot Capsule v3与JSR-184之间的...

    J2ME的3D开发教程

    本教程的核心内容围绕两大主题展开:JSR-184标准和Mascot Capsule v3引擎。 ##### JSR-184:移动3D图形API标准 JSR-184(Java Specification Request)定义了一套针对移动设备的3D图形API标准,旨在简化3D图形渲染...

    索爱手机的java平台和屏幕尺寸

    - Mascot Capsule V3 4. **Java平台4 (JP4)** - 特性: - MIDP 2.0 - CLDC 1.1 - JSR-185 - JSR-120 (WMA) - JSR-135 (MMAPI) - Nokia UI API 1.1 - JSR-184 (Mobile 3D) - Mascot Capsule V3 - JSR-75 ...

    J2ME的开发教程.pdf

    Mascot Capsule v3则是Sony Ericsson提供的一套用于创建高质量3D图形的软件库。这些技术使开发者能够在移动设备上创建出具有复杂3D效果的应用程序和游戏,满足了市场对于高质量移动娱乐的需求。 #### 五、J2ME开发...

    J2ME的3d开发教程.doc

    教程内容源自Sony Ericsson Mobile Communications AB,涵盖了JSR-184和Mascot Capsule v3两个关键标准,它们都是为了在J2ME平台上实现3D图形支持而制定的。 **JSR-184(Mobile 3D Graphics API)** 是Java ...

    移动Java 3D开发指南(PDF).zip

    Mascot Capsule v3是另一个关键概念,它是JSR-184的实现之一,由索尼爱立信(现合并为索尼移动通信)开发。Mascot Capsule提供了一个高效、可移植的框架,让开发者能够利用JSR-184的功能。它包括了3D渲染引擎、纹理...

    Mascot K-ON

    ★关于软件破解及注册机可能被杀毒软件报病毒或间谍木马(若已检测到的则将在帖中特别标注),请自行甄别和取舍,不另行加以解释。 ★资源下载后请对文件做必要的安全检测,该下载内容仅限于个人测试学习之用,不得...

    TX Mascot Installer.exe

    TX Mascot Installer.exe

    M3G 的快速模式编程

    Mascot Capsule API在日本及其他地区有广泛应用,而JSR 239(Java Bindings for OpenGL ES)为OpenGL ES提供了一个Java接口,简化了3D内容的移植。尽管M3G、OpenGL ES和Mascot Capsule API各有特点,但M3G获得了广泛...

    J2ME 3D手机游戏开发详解

    Mascot Capsule篇介绍了Mascot Capsule技术,这是一种用于创建3D模型和动画的特殊技术,包括3D模型的绘制、3D变换和透明纹理精灵的实现,以及几个实例演示,如动画机器人、跳舞的男孩和旋转的飞机。 总的来说,这...

    MASCOT Generic Format (.mgf) files 的 MATLAB 阅读器:使用 MATLAB 读取 MASCOT 通用格式文件-matlab开发

    从 MASCOT 通用格式 (.mgf) 文件读取和提取数据的函数.mgf 格式包含最少的元数据(频谱标题、保留时间、前体质量、前体强度和电荷)和相应的MS2频谱( https://fiehnlab.ucdavis.edu/projects/lipidblast/mgf-files ...

    mascotParser:R 包中 Mascot 搜索结果(PMF 和 MSMS)的解析器

    R 包中 Mascot 搜索结果(PMF 和 MSMS)的解析器。 如何安装“mascotParser” 从 Github 使用 R: install.packages( " devtools " ) library( " devtools " ) install_github( " mascotParser " , " nghiavtr " ) ...

    J2ME-Loader:适用于Android的J2ME模拟器

    它支持大多数2D游戏以及某些限制的3D(Mascot Capsule 3D游戏不起作用)。 仿真器具有虚拟键盘,每个应用程序的单独设置,扩展支持。 该项目是。 系统要求:Android 4.0+ 兼容性 提示 在某些情况下启用过滤会...

    MascotRace:Mascot比赛的GA练习

    吉祥物比赛贡献者:Eric、Kwasi 和 Meir Mascot比赛的GA练习创建 Mascot 构造函数Mascot 构造函数应该保存变量('name', 'food', 耐力整数) 创建一个(运行)方法来创建一个距离变量距离是 1 的地板和吉祥物耐力的...

    Mascot File Parsing and Quantification-开源

    在蛋白质组学研究中,Mascot 是一个广泛使用的搜索引擎,它能够比对质谱数据与蛋白质数据库,识别并量化样本中的蛋白质和肽段。MFPaQ 的出现为科研人员提供了更高效、更易用的方式来处理 Mascot 输出的数据。 MFPaQ...

Global site tag (gtag.js) - Google Analytics