processing完整教程

概述:processing在我眼里就是libgdx的高度封装,如果各位会libgdx,学processing应该可以说是无师自通,当然processing是java语言那边的。

processing是什么?

官网是这样解释的:Processing 是一本灵活的软件速写本,也是一种用于学习如何编码的语言。自 2001 年以来,Processing 一直在促进视觉艺术中的软件素养和技术中的视觉素养。有数以万计的学生、艺术家、设计师、研究人员和业余爱好者使用处理进行学习和原型设计。

其实我觉得就不能算是语言,顶多是java的libgdx的高度封装

那为什么要学processing?

对于我来说,java找不到工作了,准备躺平了,正巧爱好就是游戏,看了一眼processing,便迷住了。

目录

第一步:下载processing

第二步:启动processing

第三步:开始玩转processing

画个窗口

输出"Hello World"

规范格式

移动小球案例

惯例写法,规范类

第四步:认识颜色

颜色根据位置变动的小球案例


第一步:下载processing

官网:欢迎来到 Processing!/ Processing.org

点击下载最新版即可。

第二步:启动processing

点击exe文件即可启动processing

第三步:开始玩转processing

画个窗口

size(680,320);

输出"Hello World"

size(680,320);
background(0);
textSize(64);
textAlign(CENTER);
text("Hello World", 200, 200);

规范格式

正如我说的,这个是libgdx的高度封装,所以会有很多libgdx的内置函数。一般我们要按照libgdx格式规范


void setup() {
  size(680, 320);
  background(0);
}

void draw() {
  textSize(64);
  textAlign(CENTER);
  text("Hello World", 200, 200);
}

现在,我来讲解一下这个格式,setup函数是只执行一次,通常用于初始化,而draw函数则是无限次执行,里面有一个while循环,只要程序没有中断,就会不断的draw。

移动小球案例

正如我之前说的,程序会不断的draw,在draw过程中,改变小球的位置,就能实现移动


float circleX,circleY;

void setup() {
  circleX=0;
  circleY=0;
  size(680, 320);
  background(0);
}

void draw() {
  circle(circleX, circleY, 20);
  circleX+=5;
  circleY+=5;
}

正如我说的会不断的画⚪,但是会有很多的小球,解决这个问题也很简单,就在画的前面设置一下背景,用背景覆盖一下原先的小球即可


float circleX, circleY;

void setup() {
  circleX=0;
  circleY=0;
  size(680, 320);
  background(0);
}

void draw() {
  background(0);
  circle(circleX, circleY, 20);
  circleX+=5;
  circleY+=5;
}

惯例写法,规范类

可以将class全部定义到一个文件里面,但是这样会导致混乱。就像下面一样

一般来说,将不同的类,不同的事物放到不同的文件上,这样会更美观

点击上面那个三角形

然后就可以把⚪这个对象,和我主类区开

主类写:

BoxA boxA;
void setup() {
  boxA=new BoxA(0,0,20);
  size(680, 320);
  background(0);
}

void draw() {
  background(0);
  boxA.show();
  boxA.move(5,5);
}

⚪类写:

class BoxA{
  float circleY=0;
  float circleX=0;
  float circleR=0;
  public BoxA(float x,float y,float r){
    this.circleY=y;
    this.circleX=x;
    this.circleR=r;
  }
  public void show(){
     circle(circleX,circleY,circleR);
  }
  public void move(float xspeed,float yspeed){
    circleY+=yspeed;
    circleX+=xspeed;
  }
}

运行效果和之前一模一样

第四步:认识颜色

processing有灰度和RGB颜色区分

灰度:就是0到255,由暗转明

RGB:则是red、green、blue三种颜色,对应的参数范围也是从0到255

颜色根据位置变动的小球案例

只要在其show方法里面画小球的前面加个填充RGB,即可

看到这里了,相信你是愿意学的,推荐一下我的libgdx教程

nanshaws/LibgdxTutorial: libgdx 教程项目 本项目旨在提供完整的libgdx桌面教程,帮助开发者快速掌握libgdx游戏开发框架的使用。 (github.com)xicon-default.png?t=N7T8https://github.com/nanshaws/LibgdxTutorial

第五步:学会打印

有时候需要调试bug,这个时候就要学会打印输出到控制台

 println(boxA.circleX);

就单纯的println即可,数字就会打印到控制台上。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/621450.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

快速判断出485从站设备是否支持MODBUS RTU无线通讯

对于变频器和仪表设备,都支持485串口通讯,那么怎么判断从站设备支持那种协议呢?通常分为两种方式去判断:1.从设备参数参看2.从设备通讯报文查看。本次文章以以台达MH300系列变频器为例。 1.从设备通讯参数查看 使用设备之前一定…

C语言 文件操作

目录 1. 什么是文件?2. 二进制文件和文本文件3. 文件的打开和关闭3.1 流和标准流3.1.1 流3.1.2 标准流 3.2 文件指针3.3 打开、关闭文件3.3.1 fopen - 打开文件3.3.2 fclose - 关闭文件 4. 文件的顺序读写4.1 fgetc - 从文件流获取一个字符4.2 fputc - 将一个字符写…

金融业开源软件应用 评估规范

金融业开源软件应用 评估规范 1 范围 本文件规定了金融机构在应用开源软件时的评估要求,对开源软件的引入、维护和退出提出了实现 要求、评估方法和判定准则。 本文件适用于金融机构对应用的开源软件进行评估。 2 规范性引用文件 下列文件中的内容通过文中的规范…

智能制造数字工厂未来三年规划方案(80页ppt下载)

一、资料介绍 智能制造数字工厂未来三年规划方案是一份全面而深入的战略性文件,旨在指导我们公司在未来三年内实现智能制造领域的跨越式发展。这份80页的PPT资料,以“智能制造、智能制造系统、数字化工厂、数字孪生工厂、智能工厂和数字化车间”为核心关…

Amesim基础篇-热仿真常用模型库-Electrical Basics/Electric Storage

前言 在动力电池仿真中中我们不免会用到该元件库中的模型,该库中包含基本的电路元件与电池模型。具体的相关模型介绍如下: 1 电压源、电流源、功率源、接地 如图,分别为电压源、电流源和功率源,其中功率源在仿真中经常用到&…

《intel开发手册卷3》读书笔记1

1、CPU工作模式 1)实模式:8086的寄存器只有16位,我们也习惯于称8086的工作模式为16位模式。后续的CPU为了保持兼容性,在芯片上了电以后,还必须运行于16位模式之下。这种模式还有个正式的名字叫做实模式。在实模式下&am…

Stable Diffusion WebUI 绘画

配置环境介绍​ 目前平台集成了 Stable Diffusion WebUI 的官方镜像,该镜像中整合如下资源: GpuMall智算云 | 省钱、好用、弹性。租GPU就上GpuMall,面向AI开发者的GPU云平台 Stable Diffusion WebUI版本:v1.7.0 Python版本:3.1…

vue2 报错 component name“Index“should always be multi-word

报错原因: 组件名称应该为俩个或俩个以上单词组成的,并且还要是大驼峰命名,例如:MyIndex,MyLogin等 解决方法一: 将组件名称改为俩个或俩个以上单词组成的名称,且为大驼峰命名,例如…

半小时搞懂STM32面经知识——ADC

1.ADC 1.1 ADC是什么? 将连续变量的模拟信号转换为离散变量的数字信号 1.2 ADC的位数?(采样精度) F1和F4都具有3个ADC,F1可提供21个输入通道,F4可以提供24个输入通道。 F4的ADC支持12位,10位…

2024最新软件测试面试题及答案【史上最全】

以下是软件测试相关的面试题及答案,欢迎大家参考! 1、你的测试职业发展是什么? 测试经验越多,测试能力越高。所以我的职业发展是需要时间积累的,一步步向着高级测试工程师奔去。而且我也有初步的职业规划,前3年积累测试经验&…

SparkSQL概述

1.1. SparkSQL介绍 SparkSQL,就是Spark生态体系中的构建在SparkCore基础之上的一个基于SQL的计算模块。SparkSQL的前身不叫SparkSQL,而是叫做Shark。最开始的时候底层代码优化、SQL的解析、执行引擎等等完全基于Hive,总是Shark的执行速度要比…

动手学深度学习18 预测房价竞赛总结

动手学深度学习18 预测房价竞赛总结 李沐老师代码AutoGluonh2o集成学习automlQA 视频: https://www.bilibili.com/video/BV15Q4y1o7vc/?vd_sourceeb04c9a33e87ceba9c9a2e5f09752ef8 代码: https://www.bilibili.com/video/BV1rh411m7Hb/?vd_sourceeb04…

JAVA系列:IO流

JAVA IO流 IO流图解 一、什么是IO流 I/O流是Java中用于执行输入和输出操作的抽象。它们被设计成类似于流水,可以在程序和外部源(如文件、网络套接字、键盘、显示器等)之间传输数据。按处理数据单位分为: 1字符 2字节 、 1字节(…

Linux修炼之路之权限

目录 引言 一:Linux中用户的分类 二:在Linux中的权限 1.权限的两种属性 1.人的属性 2.事物属性 -主要以文件属性为主 3.文件权限值的两种表示方式方法 2.更改文件访问者(拥有者,所属组,其他人)权限属性 3.更改文件的拥有…

电子作业指导书系统如何提升医疗设备工厂的生产效率

在医疗设备工厂中,电子作业指导书(ESOP)正逐渐成为提升生产效率的关键因素。 一、电子作业指导书系统提供了即时可得的准确信息。 电子作业指导书系统与传统的纸质作业指导书相比,员工可以在工作现场通过电子设备随时查阅最新、最…

基于PSO优化的PV光伏发电系统simulink建模与仿真

目录 1.课题概述 2.系统仿真结果 3.核心程序与模型 4.系统原理简介 5.完整工程文件 1.课题概述 基于PSO优化的PV光伏发电系统simulink建模与仿真。其中PSO采用matlab编程实现,通过simulink的函数嵌入模块,将matlab调用进simulink中。 2.系统仿真结…

【Linux系统化学习】守护进程 | 序列化和反序列化

目录 前言 守护进程 会话 进程组 setsid系统调用 守护进程系统调用 再谈协议 序列化和反序列化 Json 前言 上两篇文章我们所编写的服务器,并算不上真正意义上的服务器一般的服务器都是要随时能够访问的,就像我们在任何时间段都可以打开抖音获取…

[C++核心编程-09]----C++类和对象之继承

🎩 欢迎来到技术探索的奇幻世界👨‍💻 📜 个人主页:一伦明悦-CSDN博客 ✍🏻 作者简介: C软件开发、Python机器学习爱好者 🗣️ 互动与支持:💬评论 &…

【MQTT】paho.mqtt.cpp 库的 介绍、下载、交叉编译、MQTT客户端例子源码

😁博客主页😁:🚀https://blog.csdn.net/wkd_007🚀 🤑博客内容🤑:🍭嵌入式开发、Linux、C语言、C、数据结构、音视频🍭 ⏰发布时间⏰:2024-05-13 1…

实习大学生如何在Purple Pi OH鸿蒙开发板下调试Android串口?

本文适用于Purple Pi OH在Android固件后串口的开发与使用。触觉智能的Purple Pi OH鸿蒙开源主板,是华为Laval官方社区主荐的一款鸿蒙开发主板。 该主板主要针对学生党,极客,工程师,极大降低了开源鸿蒙开发者的入门门槛&#xff0c…