2017-11-23 24 views
0

참고 : p5.js를 실행 중입니다.새로운 행을 그리지 않고 행을 업데이트 하시겠습니까?

사용자가 드래그를 시작한 위치에서 현재 드래그중인 위치로 선을 그립니다. 이 일을 어떻게 하죠?

mOriginX = 0; 
mOriginY = 0; 


function mousePressed(){ 
    mOriginX = mouseX; 
    mOriginY = mouseY; 
} 

function mouseDragged(){ 
    line(mOriginX,mOriginY,mouseX,mouseY); 
} 

그냥 내가 단지 지속적으로 위치를 업데이트하고 하나의 선을 그릴 수 있도록 얼마나, 내가 원래 클릭 한 위치에서 라인의 톤을 만든다?

답변

0

캔버스를 지우려면 clear() 기능을 사용하십시오.

기본적으로, 그 수행해야합니다

mOriginX = 0; 
mOriginY = 0; 

function mousePressed(){ 
    mOriginX = mouseX; 
    mOriginY = mouseY; 
} 

function mouseDragged(){ 
    clear(); 
    line(mOriginX,mOriginY,mouseX,mouseY); 
} 

또한 선을 그릴 후마다 클릭을 다시 작성할 수 있습니다 :

mOriginX = 0; 
mOriginY = 0; 

function draw() { 
    line(mOriginX,mOriginY,mouseX,mouseY); 
} 
function mousePressed() { 
    mOriginX = mouseX; 
    mOriginY = mouseY; 
    redraw(); 
} 

다시 그리기 함수 참조가 here 사용할 수 있습니다.

+0

이미 기능이 무엇인지 교체는 (255) 분명() 배경 (0) 라인 (mOriginX, mOriginY, mouseX, 쥐의) (미안 해요 코멘트를 포맷 할 수 없습니다) 다소 스트로크()의 mouseDragged 작동하지만, 한 줄만 그릴 수 있습니다. 무엇을 바꾸어야합니까? – User9123

+0

'다시 그리기 '방식을 시도해 보셨습니까? 그리고 '한줄'이란 무엇을 의미합니까? 다른 점이있는 한 줄 또는 항상 같은 점이있는 줄? – sofalse

+0

다시 그리기 방법이 아무 것도하지 않는 것으로 보입니다 (내 자신의 잘못 일 수 있음). 한 줄만 쓰면 캔버스를 이전에 있던 모든 것이 사라집니다. – User9123