2016-12-15 15 views
0

我開始學習P5.js,但是我在touchX和touchY上遇到了一些問題,我無法在網上找到任何相關文檔。touchX和touchY沒有在P5.js中定義

我從this網站複製了javascript代碼,其主要將用鼠標和紅線與觸摸畫一條藍線。

我使用了Chrome F12開發工具的觸摸模擬器,該工具在該網站上運行良好。

然後我創建了一個使用latest P5.js from cdn的HTML文件,除了當我使用觸摸時,一切正常,它說touchX和touchY是錯誤的。

這裏是JavaScript在script.js

function setup() { 
    createCanvas(windowWidth, windowHeight); 
    strokeWeight(5); 
    stroke(0); 
    fill(0); 
    background(255); 
} 

function draw() { 
    // draw stuff here 
} 


function touchMoved(){ 
    stroke(255, 0, 0); 
    line(touchX, touchY, ptouchX, ptouchY); 
    return false; 
} 

function touchEnded(){ 
    stroke(0, 0, 255); 
    line(touchX, touchY, ptouchX, ptouchY); 
    return false; 
} 

function mouseDragged(){ 
    stroke(0, 255, 0); 
    line(mouseX, mouseY, pmouseX, pmouseY); 
} 

還有就是HTML:

<html lang="en"> 
<head> 
    <meta charset="UTF-8"> 
    <title>p5JS Test</title> 
    <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/normalize/5.0.0/normalize.min.css"> 
    <style> 
     body{ 
      overflow: hidden; 
     } 
    </style> 
    <script src="https://cdnjs.cloudflare.com/ajax/libs/p5.js/0.5.5/p5.min.js"></script> 
    <script src="script.js"></script> 
</head> 
<body> 
    <h1>Draw lines!</h1> 
</body> 
</html> 

Here is the CodePen.

非常感謝。

回答

0

p5.js中沒有touchX或touchY。相反,你可以使用mouseX和mouseY,因爲如果有的話(我相信pMouseX和pMouseY也適用於之前的位置)。

但是,您可以使用touchStarted,touchMoved和touchEnded功能。如果您在事件部分here中查看這些文檔,您可以看到正在使用的mouseX和mouseY的示例。