我的processing学习笔记.docxVIP

  • 20
  • 0
  • 约8.14千字
  • 约 14页
  • 2017-03-04 发布于四川
  • 举报
我的processing学习笔记

楼主作为一个纯粹的工科男,却阴差阳错到了机关坐办公室,沦落为天天写材料为生,内心实在是千万个草泥马在狂奔。为了保持工科男的本性,也为了不被这些无聊的材料压成神经病,决定给自己找点乐趣。去年先是接触了一下arduino,编程完成了一个遥控小车,利用appinventor编了个手机遥控软件,基本实现了在手机屏幕上画图形,小车就在地上按画的路径行走。开始心挺大,想进一步学习做个小四轴, 自平衡小车,激光雕刻机等,但是由于现在每天下班第一任务是陪孩子玩,加之学习硬件还是比较烧钱,结果就荒废了。上个月无意中发现了processing,又看了一些大神的作品,觉得很有意思,而且学习软件比学习硬件时间上比较灵活(比如每天中午可以学习半小时),所以决定学习一下,丰富一下自己的业余生活。为了避免再次半途而废特开此贴记录过程(不过还是很难说,哈哈)。 今天先补上前段时间零星学习的内容:学习用教材:《爱上processing》、《代码本色》。 一、已学习的常用简单命令设置屏幕尺寸:size(宽,高);画点:point(x,y);划线:line(x1,y1,x2,y2);画三角形:triangle(x1,y1,x2,y2,x3,y3);四边形:quad(x1,y1,x2,y2,x3,y3,x4,y4);角度换算为弧度:radians(角度);长方形:rect(x,y,宽,高);椭圆:ellipse(x,y,宽,高);//目前用这个命令用的最多,嘿嘿平滑曲线:smooth(); 关闭平滑曲线:noSmooth();设置线宽:strokeWeight(x);背景颜色:background(x,x,x);//只填一个参数为灰度,0为黑255为白;填三个参数为RGB颜色fill(x,x,x,x)//颜色同上,第四个参数为透明度鼠标当前坐标:mouseX,mouseY上一帧鼠标坐标:pmouseX,pmouseY测量两点之间的距离:dist(x1,y1,x2,y2);mousePressed:布尔量,鼠标按下后为真(true,false)mouseButton:返回值:LEFT,CENTER,RIGHT 用来判断哪个键按下 。。。。。 还有一些图形命令,目前用的还很少,暂时没学。二、编程格式1.首先创建不在setup()和draw()函数的变量(全局变量)2.setup(){…};内的命令执行一遍3.draw(){…}; 内的命令持续执行三、面向对象编程由于《代码本色》完全用的是面向对象的编程方式,而本人大学时学的计算机语言是老掉牙的FORTRAN,基本上就没听说过面向对象的编程,只有重新学习面向对象的编程方法,不过学习了两天,试着编了几个小程序,发现这种编程方法确实很强大。这里就照搬一下《爱上processing》里的描述,具体的还是得自己编几个程才能体会:class xxx //1.创建一个类{int x; //2.添加值域。。。float y;xxx(参数1,参数2.。。。。)//3.添加构建函数{…..} void xxxx() //4.添加方法{…..}…void yyyyy() //{…..}}5.用类声明一个对象:xxx aa;6.创建对象并传递参数aa=new xxx;先发几个前段时间练习的小程序:1.弹球:一个小球在屏幕里弹来弹去:class BouncBall{ float x; float y; int d; float xspeed; float yspeed; BouncBall(float tempX,float tempY,int tempD,float tempXspeed,float tempYspeed) { x=tempX; y=tempY; d=tempD; xspeed=tempXspeed; yspeed=tempYspeed; } void move() { x+=xspeed; y+=yspeed; if(xwidth||xd/2) { xspeed=xspeed*-1; } if(yheight||yd/2) { yspeed=yspeed*-1; } } void display() { ellipse(x,y,d,d); } }BouncBall ball;void setup(){ size(480,480); smooth(); ball=new BouncBall(width/2,height/2,20,2,2.5);}void draw(){ ball.move(); fill(255,10); rect(0,0,width,height); fill(255,0,0); ball.display();}2.加强版弹球,想起以前玩的一个弹砖块的游戏,试着编了一个不完全版的class

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档