Home  >  Article  >  Web Front-end  >  p5.js introductory tutorial and basic shape drawing

p5.js introductory tutorial and basic shape drawing

亚连
亚连Original
2018-05-30 10:09:472975browse

This article mainly introduces the introduction of p5.js introductory tutorial and basic shape drawing. Now I share it with you and give it as a reference.

1. What is p5.js

I recently came into contact with a digital media art course called Interactivity, which teaches p5.js.

The lecturer is one of the developers... quite excited.

p5.js is a Javascript library developed for artists and designers. It can be regarded as the Web version of Processing. If you have experience in learning Processing, you will get started with p5.js very quickly.

As for the use of p5.js, this question is difficult to answer because I am also a beginner.

I currently think p5.js is a good tool to stimulate creativity, and you can embed the content of p5.js into web pages to make your website more dazzling.

2. Use p5.js

p5.js has an online code editor, the URL is as follows:

http ://alpha.editor.p5js.org/

Enter the code on the left, click the run button, and you can see the code running effect on the right.

You can register a p5.js account, and your code can be saved on the official website every time, which is very convenient for modification, testing or display.

The picture below uses the ellipse() function to draw a circle:

3. Get started with p5.js

When you create a new p5.js project, the following code will be generated:

function setup() { //setup函数,每次程序开始运行时执行一次,用于初始化。 
 createCanvas(400, 400);//生成一个400x400的画布 
}  
function draw() { //draw函数,每秒运行60次,不断地在画布上绘制图形 
 background(220);//绘制背景,颜色为RGB(220,220,220) 
}

The p5.js program always starts from setup() and executes setup once. (), it enters the continuous loop call of the draw() function.

You can find that the syntax is not much different from JavaScript, it just has a lot more special functions to call.

4. Draw basic graphics

In p5.js, drawing graphics is very easy, and there are many related functions:

function setup() {  
 createCanvas(400, 400); 
}  
 
function draw() {  
 background(220); 
  ellipse(100,100,100,100);//绘制椭圆(x,y,宽,高) 
  triangle(150,150,150,200,200,200);//绘制三角形(x1,y1,x2,y2,x3,y3) 
  quad(180,100,200,150,270,150,250,100);//绘制四边形(x1,y1,x2,y2,x3,y3,x4,y4) 
  rect(30, 20, 50, 50);//绘制矩形(x,y,宽,高) 
  line(0,0,100,100);//绘制线段(x1,y1,x2,y2)起点至终点 
  arc(200, 50, 50, 50, 0, HALF_PI);//绘制弧(x,y,宽,高,起始角度,终止角度) 
}

The effect is shown in the figure below:

Of course, the line color and fill color can be replaced, and the line thickness can also be modified:

function setup() {  
 createCanvas(400, 400); 
}  
 
function draw() {  
 background(220); 
   
  stroke(255,128,128); 
  strokeWeight(5); 
  fill(255,200,0); 
  ellipse(100,100,100,100); 
  triangle(150,150,150,200,200,200); 
   
  noStroke(); 
  fill(100,255,0); 
  quad(180,100,200,150,270,150,250,100); 
  rect(30, 20, 50, 50); 
   
  stroke(0); 
  line(0,0,100,100); 
  arc(200, 50, 50, 50, 0, HALF_PI); 
}

The effect is as shown below:

5. Check Reference

provided by p5.js There are many functions used for creation, and many functions have multiple overloaded functions. I will not explain them one by one here.

p5.js official website provides Reference, which explains each function in detail. You can further learn p5.js by checking the usage of these functions. The URL is as follows:

https ://p5js.org/reference/

The above is what I compiled for everyone. I hope it will be helpful to everyone in the future.

Related articles:

Using axios method in vue component

axios post submission formdata instance

Basic knowledge and working principles of vue-router

The above is the detailed content of p5.js introductory tutorial and basic shape drawing. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn