Processing
| Processing | |
|---|---|
| | |
| Класс языка | объектно-ориентированный |
| Тип исполнения | компилируемый |
| Появился в | 2001 |
| Автор |
Кэйси Риз Бенжамин Фрай |
| Разработчик | Processing Foundation[вд] |
| Расширение файлов |
.pde |
| Выпуск | 4.4.4 (16.05.2025) |
| Система типов | статическая |
| Испытал влияние | Design By Numbers, Java, OpenGL, C |
| Повлиял на | Processing.js, iProcessing, Arduino |
| Лицензия | GPL, LGPL |
| Сайт | processing.org |
| ОС | Linux, Mac OS, Windows, Android |
Processing — открытый язык программирования, основанный на Java. Представляет собой лёгкий и быстрый инструментарий для создания изображений, анимации и разработки интерфейсов.
Используется студентами, художниками, дизайнерами, исследователями для изучения, прототипирования и производства. Он создан для изучения основ компьютерного программирования в визуальном контексте и служит альбомным программным обеспечением (имеется в виду, что каждый *.pde файл визуальной оболочки Processing’а представляет собой отдельное изображение или анимацию, и т. д.) и профессиональным производственным инструментом.
Processing — это открытый проект инициированный Бенжамином Фраем и Кэйси Ризом. Он родился из идей, изученных в The Aesthetics and Computation Group в MIT Media Lab.
Скетчинг в Processing
Программа на Processing называется скетч (от англ. sketch — эскиз). Идея состоит в том, чтобы быстро писать скрипты на языке программирования Java.
Возможности и особенности
Каждый скетч в Processing является классом, наследуемым от Java-класса PApplet, который содержит в себе большинство возможностей языка Processing.
Перед выполнением скетча он преобразуется в код на языке Java для выполнения в среде Windows/Linux/MacOS/Android либо в Javascript-код для выполнения в браузере внутри Canvas[1].
При программировании на языке Processing все создаваемые классы являются внутренними классами основного. Это накладывает определённые ограничения при разработке.
Примеры
Hello World
В консоли
void setup(){
println("Hello World");
}
На экране
void setup(){
size(200, 200);
text("Hello World", 70, 100);
}
Карта президентских выборов США

PShape usa;
PShape state;
String [] Obama = { "HI", "RI", "CT", "MA", "ME", "NH", "VT", "NY", "NJ",
"FL", "NC", "OH", "IN", "IA", "CO", "NV", "PA", "DE", "MD", "MI",
"WA", "CA", "OR", "IL", "MN", "WI", "DC", "NM", "VA" };
String [] McCain = { "AK", "GA", "AL", "TN", "WV", "KY", "SC", "WY", "MT",
"ID", "TX", "AZ", "UT", "ND", "SD", "NE", "MS", "MO", "AR", "OK",
"KS", "LA" };
void setup() {
size(950, 600);
// The file Blank_US_Map.svg can be found at Wikimedia Commons
usa = loadShape("http://upload.wikimedia.org/wikipedia/commons/3/32/Blank_US_Map.svg");
smooth(); // Improves the drawing quality of the SVG
noLoop();
}
void draw() {
background(255);
// Draw the full map
shape(usa, 0, 0);
// Blue denotes states won by Obama
statesColoring(Obama , color(0, 0, 255));
// Red denotes states won by McCain
statesColoring(McCain, color(255, 0, 0));
// Save the map as image
saveFrame("map output.png");
}
void statesColoring(String[] states, int c){
for (int i = 0; i < states.length; ++i) {
PShape state = usa.getChild(states[i]);
// Disable the colors found in the SVG file
state.disableStyle();
// Set our own coloring
fill(c);
noStroke();
// Draw a single state
shape(state, 0, 0);
}
}
Связанные проекты
Design By Numbers
Wiring, Arduino и Fritzing
Processing породил ещё один проект: Wiring, который использует IDE от Processing с набором библиотек, написанных на языке C++, для обучения художников программированию микроконтроллеров. Сейчас существует два отдельных аппаратных проекта: Wiring и Arduino, использующих среду разработки и язык Wiring. Fritzing — ещё одна программная среда сходного типа, помогающая дизайнерам и художникам документировать их прототипы и пройти путь от прототипа до законченного продукта.
Mobile Processing
Processing.js
p5.js
Является библиотекой для JavaScript, предоставляющей некоторые функции Processing для запуска в браузере.
iProcessing
Spde
Quil
Примеры использования
- На языке Processing написана часть среды разработки SDK отвечающего за эмуляцию WOWCube для персональных компьютеров (Open Source).
См. также
Примечания
- ↑ Overview \ Processing.org. Дата обращения: 18 апреля 2013. Архивировано из оригинала 20 апреля 2013 года.
Литература
- Bohnacker, Hartmut; Gross, Benedikt; Laub, Julia; Lazzeroni, Claudius (22 августа 2012), Generative Design: Visualize, Program, and Create with Processing (1st ed.), Princeton Architectural Press, p. 472, ISBN 978-1616890773
- Glassner, Andrew (9 августа 2010), Processing for Visual Artists: How to Create Expressive Images and Interactive Art (1st ed.), A K Peters/CRC Press, p. 955, ISBN 1-56881-716-9, Архивировано из оригинала 21 апреля 2011, Дата обращения: 7 июня 2013
- Reas, Casey; Fry, Ben (17 июня 2010), Getting Started with Processing (1st ed.), Make, p. 208, ISBN 1-4493-7980-X
- Noble, Joshua (21 июля 2009), Programming Interactivity: A Designer's Guide to Processing, Arduino, and Openframeworks (1st ed.), O'Reilly Media, p. 736, ISBN 0-596-15414-3
- Terzidis, Kostas (11 мая 2009), Algorithms for Visual Design Using the Processing Language (1st ed.), Wiley, p. 384, ISBN 0-470-37548-5
- Reas, Casey; Fry, Ben; Maeda, John (30 сентября 2007), Processing: A Programming Handbook for Visual Designers and Artists (1st ed.), The MIT Press, p. 736, ISBN 0-262-18262-9, Архивировано из оригинала 17 апреля 2011, Дата обращения: 7 июня 2013
- Fry, Ben (11 января 2008), Visualizing Data (1st ed.), O'Reilly Media, p. 382, ISBN 0-596-51455-7
- Greenberg, Ira (28 мая 2007), Processing: Creative Coding and Computational Art (Foundation) (1st ed.), friends of ED, p. 840, ISBN 1-59059-617-X, Архивировано из оригинала 27 января 2011, Дата обращения: 7 июня 2013
- Shiffman, Daniel (19 августа 2008), Learning Processing: A Beginner's Guide to Programming Images, Animation, and Interaction (1st ed.), Morgan Kaufmann, p. 450, ISBN 0-12-373602-1
- Faludi, Robert (4 января 2011), Building Wireless Sensor Networks: with ZigBee, XBee, Arduino, and Processing (1st ed.), O'Reilly Media, p. 320, ISBN 978-0-596-80774-0, Архивировано 12 июня 2019
- Vantomme, Jan (20 сентября 2012), Processing 2, Creative Programming Cookbook (1st ed.), Packt Publishing, p. 291, ISBN 9781849517942, Архивировано 2 июля 2014
- Pearson, Matt (1 июня 2011), Generative Art, A practical guide using Processing (1st ed.), Manning, p. 240, ISBN 9781935182627, Архивировано 24 июня 2019
Ссылки
- Официальный сайт
- Знакомство с Processing 1.0 // Хабрахабр
- Полуостров Бинария. Программирование для детей и взрослых на Processing. Книга на русском языке isocode.ru
- Цикл уроков на YouTube (англ.)
Content Disclaimer
Informasi ini disarikan dari Wikipedia dan disajikan kembali untuk tujuan edukasi. Konten tersedia di bawah lisensi CC BY-SA 3.0. Kami tidak bertanggung jawab atas ketidakakuratan data yang bersumber dari kontribusi publik tersebut.
- The information displayed on this website is sourced in part or in whole from Wikipedia and has been adapted for the purpose of restating it. We strive to provide accurate and relevant information, however:
- There is no guarantee of absolute accuracy. Wikipedia is an open, collaborative project that can be edited by anyone, so information is subject to change.
- It is not intended to constitute professional advice. The content displayed is for informational and educational purposes only. For important decisions (e.g., medical, legal, or financial), please consult a professional.
- Content copyright. Wikipedia is licensed under the Creative Commons Attribution-ShareAlike License (CC BY-SA). This means that content may be reused with appropriate attribution and shared under a similar license.
- Responsible use. Any risk arising from the use of information from this website is entirely the responsibility of the user.