欧美一区二区三区老妇人-欧美做爰猛烈大尺度电-99久久夜色精品国产亚洲a-亚洲福利视频一区二区

p5.js入門教程之鼠標交互的示例

本文介紹了p5.js入門教程之鼠標交互的示例,分享給大家,具體如下:

創(chuàng)新互聯(lián)公司主營臨渭區(qū)網(wǎng)站建設的網(wǎng)絡公司,主營網(wǎng)站建設方案,重慶APP開發(fā)公司,臨渭區(qū)h5小程序制作搭建,臨渭區(qū)網(wǎng)站營銷推廣歡迎臨渭區(qū)等地區(qū)企業(yè)咨詢

一、鼠標交互常用關鍵詞

p5.js提供了許多鼠標操作用的關鍵詞與函數(shù),常用的有:

mouseIsPressed:關鍵詞,若鼠標按下則為true,反之為false

mouseButton:關鍵詞,用來判斷鼠標按下的是哪個鍵

案例如下:

function setup() {  
 createCanvas(400, 400); 
}  
function draw() {  
 background(220); 
 if (mouseIsPressed) { 
  textAlign(CENTER); 
  textSize(30); 
  if (mouseButton == LEFT) 
   text("LEFT",200,height/2); 
  if (mouseButton == RIGHT) 
   text("RIGHT",200,height/2); 
  if (mouseButton == CENTER) 
   text("CENTER",200,height/2); 
 } 
} 

當鼠標按下左、中、右鍵時,分別會在屏幕上顯示“LEFT”、“CENTER”、“RIGHT"。

查看效果:

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

二、鼠標交互常用函數(shù)

鼠標操作常用函數(shù)如下,還有:

mouseClicked():函數(shù),鼠標點擊時觸發(fā)一次
mousePressed():函數(shù),鼠標按下時觸發(fā)一次
mouseReleased():函數(shù),鼠標松開時觸發(fā)一次

我們可以用這些函數(shù)控制何時在屏幕上顯示圖形,案例如下:

var showEllipse=false; 
var showRect=false; 
function setup() {  
 createCanvas(400, 400); 
}  
function draw() {  
 background(220); 
 if (mouseIsPressed){ 
  ellipse(50, height/2, 50, 50); 
 } 
 if(showEllipse){ 
    ellipse(200, height/2, 50, 50); 
 } 
 if(showRect){ 
  rectMode(CENTER); 
  rect(350,height/2,50,50);  
 } 
} 
function mouseClicked(){ 
 showEllipse=!showEllipse; 
} 
 
function mousePressed(){ 
 showRect=true; 
} 
function mouseReleased(){ 
 showRect=false; 
} 

查看效果:http://alpha.editor.p5js.org/full/BkHEY8OUZ

三、鼠標拖拽物體

靈活運用以上關鍵字和函數(shù),可以做出許多功能,這里舉一例,用鼠標拖拽物體。

代碼如下:

var x=200; 
var y=200 
var r=50; 
function setup() {  
 createCanvas(400, 400); 
}  
 
function draw() {  
 background(220); 
 if(mouseIsPressed&&dist(mouseX,mouseY,x,y)<r){ 
  x=mouseX; 
  y=mouseY; 
 } 
 ellipse(x,y,r,r); 
} 

查看效果:http://alpha.editor.p5js.org/full/SJ6gbPdLb

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持創(chuàng)新互聯(lián)。

當前題目:p5.js入門教程之鼠標交互的示例
網(wǎng)頁路徑:http://chinadenli.net/article12/giosgc.html

成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供搜索引擎優(yōu)化網(wǎng)站排名、動態(tài)網(wǎng)站、App設計、網(wǎng)站內鏈、全網(wǎng)營銷推廣

廣告

聲明:本網(wǎng)站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)

商城網(wǎng)站建設