프로세싱 밀리 초

밀리 초

현재의 시간을 읽는 것 외에도 프로세싱의 모든 프로그램은 프로그램 시작 이후의 시간을 측정한다. 이 시간은 밀리 초 (1,000분의 1초)의 단위로 저장된다. 예를 들어 2천 밀리 초는 2초이고 200 밀리 초는 0.2초다. 이 측정값은 milis() 함수를 이용해 얻을 수 있고 사건을 만들거나 시간의 흐름을 측정할 수 있다. 다음 예시는 milis() 함수를 이용해 프로그램 시작 3초 후, 선을 움직이는 코드다.

int x = 0;

void setup () {

size (100, 100);

void setup() {

size(100, 100);

nextTime = millis() + timer;

noFill();

stroke (255);

}

void draw() {

background(O);

if (mode == 0) {

line(10, 10, 90, 90);

} else if (mode == 1) {

ellipse(50, 50, 80, 80);

} else if (mode == 2) {

rect(10, 10, 80, 80);

}

if (millis ( ) > nextTime) {

mode++;

if (mode > 2) {

mode = 0;

}

nextTime = millis() + timer;

}

}

millis() 함수는 int를 반환하지만 프로그램이 이 값을 시작한 후 지나간 초를 나타내는 Aot로 변환하는 것이 나을 경우 도 있다. 이 변환의 결과물은 애니메이션에서 밀리 초보다 짧은 시간 동안 발생하는 사건의 순서를 조정하는 데 사용될 수 있다.

int x = 0;

void setup() | size (100, 100);}

void draw() {

float sec = millis () / 1000.0;

if (sec > 3.0) {

x++;

}

line(s, 0, x, 100);

}

날짜

날짜 정보는 시간 데이터와 비슷한 방법으로 읽을 수 있다. 오늘 날짜는 day() 함수를 사용하며 1~31의 값을 반환한다.

현재 달의 정보는 month() 함수로 읽으며 10 1월, 601 6원, 127 12원을 지칭하는 1~12 범위의 값을 반환한다. 현재 연도 정보는 year() 함수로 읽으며 현재 연도의 4자리 정수 값을 반환한다. 이 프로그램을 실행해 콘솔을 이용해 현재의 날짜 정보 를 보자.

int d = day(); // Returns values from 1 to 31

int m = month(); // Returns values from 1 to 12

int y = year(); // Returns four- digit year (2007, 2008, etc.)

printin(y + "" + m + "" + d);

다음 예시는 지속적으로 실행되어 달의 첫 날인지 확인한다. 만약 달의 첫 날이 맞으면 콘솔에는 “새로운 달로 온 용합니다! Welcome to a new month!” 메시지가 표시된다.

void draw() {

int d = day(); // Values from 1 to 31

if (d == 1) {

printin("Welcome to a new month!");

}

}

다음 예시는 이전 예시와 비슷하지만 month() 함수까지 추가되어 오늘이 새해 첫날인지 확인한다. 만약 맞다면 “오늘은

1년의 첫 날입니다! Today is the first day of the year!” 메시지가 콘솔에 표시된다.

void draw() {

int d = day();

/Values from 1 to 31

int m = month(); // Values from 1 to 12

if ((d == 1) && (m == 1)) |

printIn("Today is the first day of the year!");

}

}

Leave a Comment