1. Introduction
Py5 연습 첫번째입니다. 약간 번거롭지만 표준 Python IDLE 환경을 기본 사용자 환경으로 가정하고 Py5를 추가로 설치해서 사용하는 방법을 살펴봅니다.
Processing 자체에 이미 매우 잘 작동되는 Processing.py 모드가 추가되어 있어서 Processing IDE에서 사용하는 것이 더 나은 환경이라고 생각됩니다. 하지만, 프로젝트 성격에 따라서 Python IDLE나 쥬피터 등의 환경에 Py5를 별도로 추가 설치해서 사용해야 하는 경우도 필요합니다. 이 방법은 표준 Python IDLE 환경에서 다양하고 멋진 Processing 함수들을 사용하는 방법을 보여줍니다.
Processing.py 공식 사이트에서 추가 도움말을 확인할 수 있습니다.
2. Code
# 초간단 예제 하나를 살펴보겠습니다.
import py5
def setup():
py5.size(200, 200)
py5.rect_mode(py5.CENTER)
def draw():
py5.rect(py5.mouse_x, py5.mouse_y, 10, 10)
py5.run_sketch()
3. Result


4. Notes
# 외부 모듈인 py5 모듈을 불러옵니다.
# py5는 외부 프로그램이므로 Python IDLE나 Thonny IDE에서 사용하려면 설치 과정을 거쳐야 합니다.
# from py5 import * 방식으로 불러와서 사용하는 방법도 알아두면 좋을 듯.
import py5
# setup() 함수는 한 번만 실행됩니다.
# Processing과 완전히 같은 방식으로 작동합니다.
def setup():
py5.size(200, 200)
py5.rect_mode(py5.CENTER)
# draw() 함수는 프로그램이 종료될 때까지 계속 반복해서 실행됩니다. 무한 반복.
# Processing과 완전히 같은 방식으로 작동합니다.
def draw():
py5.rect(py5.mouse_x, py5.mouse_y, 10, 10)
# 다음 명령으로 위 코드들이 실행됩니다.
# 프로그램 시작점 또는 프로그램 진입점으로 일종의 main() 함수 역할을 하는 셈입니다.
py5.run_sketch()
원래의 Processing IDE에서는 보통 단축키 'Ctrl + R'로 실행합니다. '내보내기'로 실행 파일을 만든 후에 탐색기에서 이 파일에 접근하여 실행하는 방법도 있습니다.
참고 : 이런 저런 보안 프로그램이나 바이러스 백신, 랜섬웨어 방어 프로그램이 작동되고 있는 일부 컴퓨터 시스템에서 Processing은 프로세싱의 실행 기반이 되는 1) OpenJDK와 2) Processing 프로그램 그 자체, 이 두 프로그램에 대한 실행 허가를 요청할 수 있습니다. 프로그램 실행 및 네크워크 접근에 대한 요청이 있을 경우, 접근 및 실행 허가가 필요합니다.
■ 필요한 추가 작업들 (시스템에 따라서 필요없거나 약간 다를 수 있음. 설치에 필요한 약간의 도움말들 )
1) PIP 업데이트
(CMD 창이나 PowerShell 창에서 실행해야 함.)
- 설치 여부 및 버전 확인
python -m pip --version
- 없다면 설치
python -m ensurepip
- 또는
python -m ensurepip --upgrade
- 최신 버전으로 업그레이드
python -m pip install --upgrade pip
2) Py5설치 (표준 Python IDLE용, CMD 창에서.)
pip install py5
3) JavaSE 17+ 설치 (CMD 창에서 보통은 아래 한 줄로. 버전이 달라지면 아래 메시지 일부도 달라질 수도.)
pip install install-jdk
- 다음줄은 확인용. (한 줄에 두 명령문 실행)
python -c "import jdk; print('Java installed to', jdk.install('17'))"
- 설치된 Java 버전 확인용.
java -version
4) 시스템 환경 변수 편집 : JAVA_HOME 추가
- 보통은 다음 폴더처럼, C:\Users\User\.jdk\jdk-17.0.14+7
- Windows 11 > 설정 > 시스템 > 고급 시스템 설정 > 시스템 속성 패널 > 고급 탭 > 환경 변수 패널 > 시스템 변수 > 새로 만들기 > JAVA_HOME 추가.
- 위 C:\Users\User\.jdk\jdk-17.0.14+7.. 라는 폴더 위치는 하나의 예시임. 자바를 설치하는 사용자가 결정.
- 예를 들어 매우 간단하게 C:\Java_\에 설치할 수도 있음. 이 경우, C:\Java_\bin\Java.exe가 있어야 함.
- 위 경우, C:\Users\User\.jdk\jdk-17.0.14+7\bin 폴더에 Java.exe가 있어야 함.
- JAVA_HOME 환경 변수의 값으로는 하위 폴더 bin의 위치 정보를 입력해야 함. bin 폴더명은 제외해야 함. 주의.
- 위 경우,
C:\Users\User\.jdk\jdk-17.0.14+7 (OK)
C:\Users\User\.jdk\jdk-17.0.14+7\bin (Not OK, Do not like this.)
5) 시스템 Path 편집 : %JAVA_HOME%\bin
위 시스템 속성 패널 > 환경 변수 패널 > 시스템 변수 > Path 편집 > 마지막 줄에 다음 정보 추가
%JAVA_HOME%\bin
■ 응용 연습 과제
1) 다른 명령들 목록 알아보기
기본적인 2차원 평면 도형 그리기(2D Primitives)
- 호 그리기 - arc()
- 원 그리기 - circle()
- 타원 그리기 - ellipse()
- 선 그리기 - line()
- 점 그리기 - point()
- 사각형 그리기 - quad()
- 직사각형 그리기 - rect()
- 정사각형 그리기 - square()
- 삼각형 그리기 - triangle()
- 기타 추가 도형 및 다른 명령어들 링크
Reference
py.processing.org
2) 참고할 인터넷 도움말 주소 알아보기.
하단 레퍼런스 링크들 참고하세요.
5. Processing 자체 Python 모드로 실행하기.
"""
파이썬 모드를 지원하려면 프로세싱에서 '파이썬 모드' 를 추가로 설치해야 합니다.
설치법은 간단하지만 메뉴를 뒤지시거나 구글 검색 하세욧!!
이곳의 글들은 더 이상 친절하지 않습니다. ^.^;
파이썬 모드가 추가되면 기존 방대한 프로세싱 명령어에 더하여 파이썬 명령어까지 함께 사용할 수 있어서(에에?? 진짜일까요??) 하나의 소스 코드에 2개의 프로그래밍 언어를 사용할 수 있게 되는 느낌이 듭니다.
그 동안 파이썬으로 뭔가 이쁜 그림을 이것 저것 좀 그리려면 제법 복잡한 과정을 거쳐야 하지만 프로세싱 파이썬 모드를 활용하면 복잡성을 최소화할 수 있습니다.
전문가가 되고 싶다면 위에서 소개한 이전 다른 방법들도 알아야 하겠지만 초보자들은 프로세싱의 파이썬 모드만 알아도 훌륭합니다.
^.^;
"""
# 위 소스 코드 일부 수정 필요
# import py5 부분은 필요없으며, 세부 코드에도 'py5.' 모듈명을 붙일 필요가 없다.
# 따라서 코드가 매우 간결해진다. 실행은 단축키 'Ctrl + R'.
def setup():
size(400, 400)
rectMode(CENTER)
def draw():
rect(mouseX, mouseY, 10, 10)
< 실행 결과 >

6. Files
그렇게 길지 않은 코드라.. ^.^;
7. Ref.
1) 피터 파렐, [ 파이썬과 함께 하는 수학 어드벤처 ] 에이콘. 2020.
2) Casey Reas, Ben Fry, [ 손에 잡히는 프로세싱 ] 인사이트 2017.
3) Casey Reas, Ben Fry, Allison Parrish, [ Getting Started with Processing.Py ] Maker Media. 2016
4) Casey Reas, Ben Fry, [ 프로세싱 교과서 ] 유엑스리뷰. 2018 (이 교재의 영어 원서는 아래 책.)
5) Casey Reas, Ben Fry, [ Processing : A Programming Handbook for Visual Designers and Artists ] 2nd. MIT. 2014
6) Py5 코딩 공식 안내 페이지(py5coding.org)
7) Processing Python Mode 공식 페이지
8) Py5 패키지 인덱스 페이지(pypi )
9) Py5Coding GitHub
Happy Programming!
^.^;
'Programming > Python' 카테고리의 다른 글
Python Intro - 003 - Input and Return Value Ex. 001 (0) | 2025.02.16 |
---|---|
Tkinter Entry 위젯 - 002 : StringVar() (0) | 2025.02.16 |
Python Intro - 002 - 대문자 시그마 기호와 파이 기호 (0) | 2025.02.13 |
Tkinter Intro Ex-001 (Update 1.) (0) | 2024.12.22 |
[ 고급 ] 파일명 유틸리티 SR. (v.0.0.2 beta 002) - Updates #3, 4 (0) | 2024.11.26 |