5.3.4 实现投影效果实例

更新于 2026年10月10日 版权声明
5.3.4 实现投影效果实例

接下来将通过一个具体实例的实现流程,详细讲解实现正交投影和透视投影效果的方法

图示

本实例的实现流程如下。

1)编写文件MyActivity.java,具体实现流程如下

■ 为布局文件中的按钮定义了监听器类,实现了在两种投影之间切换并分别实现显示响

应的效果。

■ 重写onPause方法以继承父类的方法,并同时将MySurfaceView视图挂起或恢复。 文件MyActivity.java的主要代码如下。

图示

(2)编写文件MySurfaceView.java,通过此文件定义了MySurfaceView的构造器。具体实现流程如下。

■ 在创建MySurfaceView对象的同时,并为其设置渲染器和渲染模式。

■ 定义触摸回调方法以实现屏幕触控功能,通过在屏幕上滑动实现旋转场景中物体的

功能。

■ 定义渲染器内部类以实现对图像的渲染,当屏幕横竖发生变化时的措施及创建

MySurfaceView时初始化一些功能。(https://www.daowen.com)

文件MySurfaceView.java的主要代码如下。

图示

图示

图示

3)编写文件touCH.java,具体实现流程如下。

■ 先声明顶点缓存、顶点颜色缓存、顶点索引缓存、顶点数、索引数等相关变量。

■ 定义类dingCH的构造器来初始化相关数据,分别初始化六边形的顶点数据缓冲、颜色数据缓冲和索引数据缓冲。

■ 定义应用程序中具体实现场景物体的绘制方法。

文件touCH.java的主要代码如下。

图示

图示

图示

执行后会在屏幕中通过开关按钮分别显示正交投影和透视投影两种效果,如图5-4所示。

图示

图5-4 执行效果

↑上一章 ↓下一章
关注公众号获取验证码
复制内容需要验证码(7.99元/天)