본문 바로가기

GD's IT Lectures : 기초부터 시리즈187

[프로세싱(Processing) : 중급] 입출력과 통신 5. 입출력과 통신 5.1. 파일 입출력 및 데이터 저장 프로세싱에서는 다양한 형식의 파일을 읽고 쓸 수 있습니다. 예를 들어, 텍스트 파일을 읽고 쓰는 방법은 다음과 같습니다. // 텍스트 파일 읽기 String[] lines = loadStrings("data.txt"); for (String line : lines) { println(line); } // 텍스트 파일 쓰기 String[] linesToWrite = {"Hello", "World"}; saveStrings("output.txt", linesToWrite); 이 외에도 프로세싱에서는 JSON, CSV, XML 등의 데이터 형식을 지원하며, 해당 데이터를 읽고 쓸 수 있는 함수를 제공합니다. 5.2. 웹캠 및 마이크 입력 프로세싱에서는 .. 2023. 5. 1.
[프로세싱(Processing) : 중급] 사운드 처리 4. 사운드 처리 프로세싱에서 사운드 처리를 위해 사용되는 라이브러리들을 소개하고, 사운드 재생 및 제어, 오디오 분석 및 시각화, 그리고 사운드 합성 및 처리 방법을 배웁니다. 4.1. 사운드 라이브러리 소개 프로세싱은 사운드 처리를 위한 여러 라이브러리를 제공합니다. 대표적인 라이브러리로는 'Minim'과 'Processing Sound Library'가 있습니다. 'Minim'은 사운드 재생, 오디오 분석 및 시각화, 그리고 사운드 합성을 위한 기능을 제공합니다. 'Processing Sound Library'는 좀 더 간단한 API로 사운드 재생 및 합성을 위한 기능을 제공합니다. 4.2. 사운드 재생 및 제어 먼저, 사운드 파일을 재생해 봅시다. Minim 라이브러리를 사용하여 사운드 파일을 불.. 2023. 5. 1.
[프로세싱(Processing) : 중급] 애니메이션과 입체 공간 3. 애니메이션과 입체 공간 이 강의 자료에서는 프로세싱을 사용한 애니메이션과 입체 공간에 대한 중급 지식을 다룹니다. 여기에서 배울 내용은 프레임 기반 애니메이션, 키 프레임 애니메이션, 입체 공간과 3D 그래픽, 그리고 3D 모델 및 텍스처 맵핑입니다. 이를 통해 동적이고 입체적인 시각적 표현을 구현할 수 있습니다. 3.1. 프레임 기반 애니메이션 프레임 기반 애니메이션은 프레임 단위로 이미지를 업데이트하여 움직임을 표현하는 방식입니다. 프로세싱에서는 draw() 함수를 사용하여 프레임 간의 차이를 계산하고 업데이트합니다. float x = 0; void setup() { size(640, 360); } void draw() { background(255); x += 1; if (x > width) .. 2023. 5. 1.
[프로세싱(Processing) : 중급] 고급 그래픽 기법 2. 고급 그래픽 기법 고급 그래픽 기법을 사용하면 프로세싱을 통해 더 많은 시각적 표현을 구현할 수 있습니다. 이러한 기법들은 중급자 이상의 사용자에게 적합하며, 창의적인 그래픽 작업을 수행하는데 도움이 됩니다. 2.1. 픽셀 단위 그래픽 처리 프로세싱에서 픽셀 단위로 이미지를 조작하려면 loadPixels()를 호출한 후 pixels[] 배열에 접근하여 픽셀 값(색상)을 변경하고, 마지막으로 updatePixels()를 호출하여 변경사항을 적용합니다. void setup() { size(200, 200); loadPixels(); for (int y = 0; y < height; y++) { for (int x = 0; x < width; x++) { color c = color(random(255).. 2023. 5. 1.
[프로세싱(Processing) : 중급] 객체지향 프로그래밍 (OOP) 기본 1. 객체지향 프로그래밍 (OOP) 기본 프로세싱(Processing)은 Java를 기반으로 한 프로그래밍 언어로, 객체지향 프로그래밍(Object-Oriented Programming, OOP)을 지원합니다. 이번 장에서는 객체지향 프로그래밍의 핵심 개념인 클래스와 객체, 생성자와 메서드, 캡슐화, 상속, 다형성에 대해 알아보고, 프로세싱에서 어떻게 적용되는지 살펴봅니다. 1.1. 클래스와 객체 클래스(Class)는 객체(Object)를 생성하기 위한 틀로, 데이터와 함수를 하나로 묶어서 관리할 수 있게 합니다. 객체는 클래스의 인스턴스로, 실제 프로그램에서 사용되는 개별적인 요소입니다. 프로세싱에서 클래스는 다음과 같이 정의합니다. class Car { int x; int y; color c; Car.. 2023. 5. 1.
[프로세싱(Processing)] 프로젝트 예제 7. 프로젝트 예제 7.1. 간단한 그림판 프로젝트 간단한 그림판 프로젝트는 마우스와 키보드를 이용하여 캔버스에 그림을 그리는 프로그램입니다. 이 프로젝트를 통해 마우스와 키보드 이벤트 처리, 그리기 도구 등 기본적인 그래픽 요소를 활용하는 방법을 익힐 수 있습니다. 다음은 간단한 그림판 프로젝트 예제 코드입니다. int size = 10; // 그리기 도구 크기 color penColor = color(0); // 그리기 도구 색상 void setup() { size(400, 400); background(255); } void draw() { stroke(penColor); strokeWeight(size); if (mousePressed) { line(mouseX, mouseY, pmouseX, p.. 2023. 5. 1.