摘要:
Scene是ProScene最关键的类,它提供了摄像机交互。我们只需要在setup()中实例化一个Scene对象,那么整个3D场景就可以为鼠标键盘控制。 1 import remixlab.proscene.*; 2 3 Scene scene; 4 5 void setup() { 6 size(640, 360, P3D); 7 scene=new Scene(this); 8 } 9 10 void draw() {11 background(127);12 }点击运行,按住鼠标左键旋转场景,中键缩放,右键平移。这时,如果我们加入一些以前学过的3D图形命令在draw()里... 阅读全文
摘要:
在我们讨论ProScene之前,请允许我们讨论一些基本常识,特别是中学时期学习计算机基本操作技巧。为什么这么说呢?因为(得益于某些急功近利的教程)有很多人用了Processing很久都不知道Processing的基本例程在哪里和第三方库在哪找和安装到哪里,更不知道文档在哪里……我们要复习的中学计算机课程叫做“常用窗口程序使用指南”,对没错,就是这么一个简单的内容。它只告诉我们一件事情,任何应用都有菜单栏,而里面肯定有有用的东西,比如点开Sketch→ImportLibrary→AddLibrary里面就会有一大堆第三方库可以下载!ProScene也是其一。然后基于“义务教育计算机课程”在搜索栏 阅读全文
摘要:
相信不少初学Processing的人和我一样,从对编程一无所知,到能用代码编写多媒体程序,制作各种生成设计作品,内心充满了自豪:我可以为自己写软件编程了,而且可比println/cout什么的精彩多了!的确,Processing华丽而简洁的图形接口让程序不再是枯燥的文字对答,而极短的学习曲线则给予了新手找回自信的机会。更重要的是,它的继承和传播者们创造了一系列高效便捷的第三方库,它能够给对原型的快速开发以极高的便利,让新的想法不经停顿,就展示在所有人(包括自己)的面前——别人还在写几百行的代码时,ProcesingERs用几句话就完成了一个交互体验十足的安卓app。ProScene就是这样思维 阅读全文
摘要:
首先让我们先制作一个最简单的也是一步实现我们目的的——基于ProScene的3D交互浏览器,不仅能控制摄像机角度,还可点选并用鼠标控制具体3D对象的空间变换(旋转,平移等) 。根据准备篇的内容,我们import ProScene和ControlP5两个库,并新建一个Tab,命名为Box。在Box里,我们编写一个名为Box的类,其有一个参数和一个方法:用于存储空间变换信息的对象iFrame和用于绘制图像的draw(): 1 class Box { 2 InteractiveFrame iFrame; 3 4 Box(Scene scene,float x,float y,float z... 阅读全文