"처리 중"이라는 프로그램을 사용하여이 코드를 작성하고 있습니다. 이 코드는 마우스를 드래그 할 때 마우스 좌표를 배열에 기록한 다음 마우스를 놓으면 배열에 저장된 좌표 경로를 따라 원을 표시하지만 현재는 드래그를 시작한 곳으로 마우스를 드래그하는 것을 멈췄습니다. 이것은 다른 방법으로 생각되었지만 많은 것을 시도해 보았지만 그 반대의 결과를 얻었습니다. 그러나 나는 작동하지 않는 것으로 보입니다 :/내 프로그램이 배열을 거꾸로 저장하고 있습니다.
나를 보여줄 수 있다면 정말 도움이 될 것입니다! 나는 정말 명백한 것을 놓쳤을 것이라고 확신한다.
int num = 100;
int[] x = new int[num];
int[] y = new int[num];
boolean released = false;
int arrayIndex;
boolean drag = false;
void setup() {
size(600, 600);
noStroke();
smooth();
fill(255, 102);
}
void draw() {
background(0);
if (released==true){
arrayIndex= (arrayIndex+1)%100;
ellipse(x[arrayIndex],y[arrayIndex],20,20);
}
}
void mouseDragged(){
drag=true;
x[0] = mouseX;
y[0] = mouseY;
for (int i = num - 1; i > 0; i--) {
x[i] = x[i-1];
y[i] = y[i-1];
}
}
void mouseReleased(){
released=true;
}
당신이 사용하는 언어. 배열의 상단에서 시작하여 작업을하는 것처럼 값을 추가하는 것처럼 보이지만 배열을 읽어 패스를 그리는 코드는 맨 아래에서 시작하여 작동합니다. –
@MikeW'Processing'은 언어의 이름이고 자바 프레임 워크입니다. – kevinsa5