Processing
Класс языка: | |
---|---|
Тип исполнения: | |
Появился в: |
2001-04-19 |
Автор: | |
Расширение файлов: |
.pde |
Выпуск: |
3.0 (2015-09-30 ) |
Система типов: | |
Испытал влияние: | |
Повлиял на: | |
Лицензия: | |
Сайт: |
[www.processing.org cessing.org] |
ОС: |
Processing — открытый язык программирования, основанный на Java. Представляет собой лёгкий и быстрый инструментарий для людей, которые хотят программировать изображения, анимацию и интерфейсы.
Используется студентами, художниками, дизайнерами, исследователями и любителями, для изучения, прототипирования и производства. Он создан для изучения основ компьютерного программирования в визуальном контексте и служит альбомным программным обеспечением (имеется в виду то, что каждый *.pde файл визуальной оболочки Processing’а представляет собой отдельное изображение или анимацию, и т. д.) и профессиональным производственным инструментом.
Processing — это открытый проект инициированный Бенжамином Фраем и Кэйси Ризом. Он родился из идей, изученных в The Aesthetics and Computation Group в MIT Media Lab.
Содержание
Скетчинг в Processing
Программа на Processing называется скетч (от англ. sketch — эскиз). Идея состоит в том, чтобы программирование в Java-стиле было похоже на скриптование, и взятии на вооружение процесса скриптования для быстрого написания кода.
Возможности и особенности
Каждый скетч в Processing является классом, наследуемым от Java-класса [processing.googlecode.com/svn/trunk/processing/build/javadoc/core/processing/core/PApplet.html PApplet]
, который содержит в себе большинство возможностей языка Processing.
Перед выполнением скетча он преобразуется в код на языке Java для выполнения в среде Windows/Linux/MacOS/Android либо в Javascript-код для выполнения в браузере внутри Canvas[1].
При программировании на языке Processing все создаваемые классы являются внутренними классами основного. Это накладывает определённые ограничения при разработке.
Примеры
Hello World
//Hello mouse.
void setup() {
size(400, 400);
stroke(255);
background(192, 64, 0);
}
void draw() {
line(150, 25, mouseX, mouseY);
text('Hello World',mouseX, mouseY)
}
Карта президентских выборов США
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("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
iProcessing
Spde
Quil
См. также
Напишите отзыв о статье "Processing"
Примечания
- ↑ [www.processing.org/learning/overview/ Overview \ Processing.org]. Проверено 18 апреля 2013. [www.webcitation.org/6G1CGJ2Bj Архивировано из первоисточника 20 апреля 2013].
Литература
- Bohnacker, Hartmut; Gross, Benedikt; Laub, Julia & Lazzeroni, Claudius (August 22, 2012), Generative Design: Visualize, Program, and Create with Processing (1st ed.), Princeton Architectural Press, сс. 472, ISBN 978-1616890773
- Glassner, Andrew (August 9, 2010), [www.crcpress.com/ecommerce_product/product_detail.jsf?isbn=9781568817163 Processing for Visual Artists: How to Create Expressive Images and Interactive Art] (1st ed.), A K Peters/CRC Press, сс. 955, ISBN 1-56881-716-9, <www.crcpress.com/ecommerce_product/product_detail.jsf?isbn=9781568817163>
- Reas, Casey & Fry, Ben (June 17, 2010), Getting Started with Processing (1st ed.), Make, сс. 208, ISBN 1-4493-7980-X
- Noble, Joshua (July 21, 2009), [oreilly.com/catalog/9780596154141/ Programming Interactivity: A Designer's Guide to Processing, Arduino, and Openframeworks] (1st ed.), O'Reilly Media, сс. 736, ISBN 0-596-15414-3, <oreilly.com/catalog/9780596154141/>
- Terzidis, Kostas (May 11, 2009), [www.wiley.com/WileyCDA/WileyTitle/productCd-0470375485.html Algorithms for Visual Design Using the Processing Language] (1st ed.), Wiley, сс. 384, ISBN 0-470-37548-5, <www.wiley.com/WileyCDA/WileyTitle/productCd-0470375485.html>
- Reas, Casey; Fry, Ben & Maeda, John (September 30, 2007), [mitpress.mit.edu/catalog/item/default.asp?ttype=2&tid=11251 Processing: A Programming Handbook for Visual Designers and Artists] (1st ed.), The MIT Press, сс. 736, ISBN 0-262-18262-9, <mitpress.mit.edu/catalog/item/default.asp?ttype=2&tid=11251>
- Fry, Ben (January 11, 2008), [oreilly.com/catalog/9780596514556/ Visualizing Data] (1st ed.), O'Reilly Media, сс. 382, ISBN 0-596-51455-7, <oreilly.com/catalog/9780596514556/>
- Greenberg, Ira (May 28, 2007), [friendsofed.com/book.html?isbn=159059617X Processing: Creative Coding and Computational Art (Foundation)] (1st ed.), friends of ED, сс. 840, ISBN 1-59059-617-X, <friendsofed.com/book.html?isbn=159059617X>
- Shiffman, Daniel (August 19, 2008), [www.learningprocessing.com/ Learning Processing: A Beginner's Guide to Programming Images, Animation, and Interaction] (1st ed.), Morgan Kaufmann, сс. 450, ISBN 0-12-373602-1, <www.learningprocessing.com/>
- Faludi, Robert (January 4, 2011), [faludi.com/bwsn Building Wireless Sensor Networks: with ZigBee, XBee, Arduino, and Processing] (1st ed.), O'Reilly Media, сс. 320, ISBN 978-0-596-80774-0, <faludi.com/bwsn>
- Vantomme, Jan (September 20, 2012), [www.packtpub.com/processing-2-creative-programming-cookbook/book Processing 2, Creative Programming Cookbook] (1st ed.), Packt Publishing, сс. 291, ISBN 9781849517942, <www.packtpub.com/processing-2-creative-programming-cookbook/book>
- Pearson, Matt (June 1, 2011), [zenbullets.com/book.php Generative Art, A practical guide using Processing] (1st ed.), Manning, сс. 240, ISBN 9781935182627, <zenbullets.com/book.php>
Ссылки
- [www.processing.org/ Официальный сайт] (англ.)
- [habrahabr.ru/post/58314/ Знакомство с Processing 1.0] // Хабрахабр
- Интерактивные видео-уроки с русским переводом [helloprocessing.ru/ helloprocessing.ru]
- Полуостров Бинария. Программирование для детей и взрослых на Processing. Книга на русском языке [isocode.ru/ isocode.ru]
Отрывок, характеризующий Processing
Ростов вышел опять в сени и заметил, что на крыльце было уже много офицеров и генералов в полной парадной форме, мимо которых ему надо было пройти.Проклиная свою смелость, замирая от мысли, что всякую минуту он может встретить государя и при нем быть осрамлен и выслан под арест, понимая вполне всю неприличность своего поступка и раскаиваясь в нем, Ростов, опустив глаза, пробирался вон из дома, окруженного толпой блестящей свиты, когда чей то знакомый голос окликнул его и чья то рука остановила его.
– Вы, батюшка, что тут делаете во фраке? – спросил его басистый голос.
Это был кавалерийский генерал, в эту кампанию заслуживший особенную милость государя, бывший начальник дивизии, в которой служил Ростов.
Ростов испуганно начал оправдываться, но увидав добродушно шутливое лицо генерала, отойдя к стороне, взволнованным голосом передал ему всё дело, прося заступиться за известного генералу Денисова. Генерал выслушав Ростова серьезно покачал головой.
– Жалко, жалко молодца; давай письмо.
Едва Ростов успел передать письмо и рассказать всё дело Денисова, как с лестницы застучали быстрые шаги со шпорами и генерал, отойдя от него, подвинулся к крыльцу. Господа свиты государя сбежали с лестницы и пошли к лошадям. Берейтор Эне, тот самый, который был в Аустерлице, подвел лошадь государя, и на лестнице послышался легкий скрип шагов, которые сейчас узнал Ростов. Забыв опасность быть узнанным, Ростов подвинулся с несколькими любопытными из жителей к самому крыльцу и опять, после двух лет, он увидал те же обожаемые им черты, то же лицо, тот же взгляд, ту же походку, то же соединение величия и кротости… И чувство восторга и любви к государю с прежнею силою воскресло в душе Ростова. Государь в Преображенском мундире, в белых лосинах и высоких ботфортах, с звездой, которую не знал Ростов (это была legion d'honneur) [звезда почетного легиона] вышел на крыльцо, держа шляпу под рукой и надевая перчатку. Он остановился, оглядываясь и всё освещая вокруг себя своим взглядом. Кое кому из генералов он сказал несколько слов. Он узнал тоже бывшего начальника дивизии Ростова, улыбнулся ему и подозвал его к себе.
Вся свита отступила, и Ростов видел, как генерал этот что то довольно долго говорил государю.
Государь сказал ему несколько слов и сделал шаг, чтобы подойти к лошади. Опять толпа свиты и толпа улицы, в которой был Ростов, придвинулись к государю. Остановившись у лошади и взявшись рукою за седло, государь обратился к кавалерийскому генералу и сказал громко, очевидно с желанием, чтобы все слышали его.
– Не могу, генерал, и потому не могу, что закон сильнее меня, – сказал государь и занес ногу в стремя. Генерал почтительно наклонил голову, государь сел и поехал галопом по улице. Ростов, не помня себя от восторга, с толпою побежал за ним.
На площади куда поехал государь, стояли лицом к лицу справа батальон преображенцев, слева батальон французской гвардии в медвежьих шапках.
В то время как государь подъезжал к одному флангу баталионов, сделавших на караул, к противоположному флангу подскакивала другая толпа всадников и впереди их Ростов узнал Наполеона. Это не мог быть никто другой. Он ехал галопом в маленькой шляпе, с Андреевской лентой через плечо, в раскрытом над белым камзолом синем мундире, на необыкновенно породистой арабской серой лошади, на малиновом, золотом шитом, чепраке. Подъехав к Александру, он приподнял шляпу и при этом движении кавалерийский глаз Ростова не мог не заметить, что Наполеон дурно и не твердо сидел на лошади. Батальоны закричали: Ура и Vive l'Empereur! [Да здравствует Император!] Наполеон что то сказал Александру. Оба императора слезли с лошадей и взяли друг друга за руки. На лице Наполеона была неприятно притворная улыбка. Александр с ласковым выражением что то говорил ему.
Ростов не спуская глаз, несмотря на топтание лошадьми французских жандармов, осаживавших толпу, следил за каждым движением императора Александра и Бонапарте. Его, как неожиданность, поразило то, что Александр держал себя как равный с Бонапарте, и что Бонапарте совершенно свободно, как будто эта близость с государем естественна и привычна ему, как равный, обращался с русским царем.
Александр и Наполеон с длинным хвостом свиты подошли к правому флангу Преображенского батальона, прямо на толпу, которая стояла тут. Толпа очутилась неожиданно так близко к императорам, что Ростову, стоявшему в передних рядах ее, стало страшно, как бы его не узнали.
– Sire, je vous demande la permission de donner la legion d'honneur au plus brave de vos soldats, [Государь, я прошу у вас позволенья дать орден Почетного легиона храбрейшему из ваших солдат,] – сказал резкий, точный голос, договаривающий каждую букву. Это говорил малый ростом Бонапарте, снизу прямо глядя в глаза Александру. Александр внимательно слушал то, что ему говорили, и наклонив голову, приятно улыбнулся.
– A celui qui s'est le plus vaillament conduit dans cette derieniere guerre, [Тому, кто храбрее всех показал себя во время войны,] – прибавил Наполеон, отчеканивая каждый слог, с возмутительным для Ростова спокойствием и уверенностью оглядывая ряды русских, вытянувшихся перед ним солдат, всё держащих на караул и неподвижно глядящих в лицо своего императора.
– Votre majeste me permettra t elle de demander l'avis du colonel? [Ваше Величество позволит ли мне спросить мнение полковника?] – сказал Александр и сделал несколько поспешных шагов к князю Козловскому, командиру батальона. Бонапарте стал между тем снимать перчатку с белой, маленькой руки и разорвав ее, бросил. Адъютант, сзади торопливо бросившись вперед, поднял ее.
– Кому дать? – не громко, по русски спросил император Александр у Козловского.
– Кому прикажете, ваше величество? – Государь недовольно поморщился и, оглянувшись, сказал:
– Да ведь надобно же отвечать ему.
Козловский с решительным видом оглянулся на ряды и в этом взгляде захватил и Ростова.