So in my attempt to do assignment two I realized creating your own code is a very hard thing to do, well at least to make the program do something really intriguing. Unfortunately I was not able to create something cool just yet, but I am beginning to understand the writing of script better.
Using SetDraw as a basis, I removed the continuous line and added two ellipses and a rectangle to form what I believe is a mock Mickey Mouse head, but I think I failed at capturing that shape. Also I added the functions loop(), noLoop() and mousePressed() which places my newly created object in about the center of the page and once clicked with the mouse, continuous movement begins.
Here is a short video showing the “processing”
I think it’s also important to note that I have been making my video’s using screen capture software camtasia studio and then uploading them to vimeo
For assignment one I chose to modify an awesome sketch one of my friends showed me from openprocessing.org. The original page for this sketch (created by BlueThen) can be found here. The code is extremely well documented with notes about what everything does. The original sketch presented is a curtain that is pulled down by gravity and gets pulled by clicks of the mouse, ultimately ripping (if pulled hard enough).
The sketch is a ton of fun and beautifully made to resemble gravity and ripping. The code itself is split up into a couple of different tabs, which corresponds to tabs in the sketch. After finally getting the tabs set up correctly and adding a missing font, I was able to get the sketch file working. Because the sketch was so well documented, it was extremely easy to manipulate things:
Code with clear annotation of what to change for each part of the sketch
Making a curtain the full height so it doesn't dangle and rests on the ground
Modifying some of the ‘resting distance’ and ‘stiffness’ settings provide some of the most fun. In some cases though, if pushed to the extreme the whole curtain breaks immediately and shatters into tiny particles. The particles have a strange relation to each other though as picking up one will affect the others around it still.
The other parts I liked playing around with were the ‘gravity strength’, ‘mouse influence size’, and ‘mouse tear size’. For example doubling the gravity causes the curtain to pull and stretch really far without any interaction from the user (because of the start value of the curtain).
Doubling the gravity
I found that because of the complicated script, for me and my complete confusion still with the processing language, it was near impossible to modify anything that wasn’t clearly labeled. Still fun nonetheless.
In my last post I showed a specific example of the Substrate processing sketch designed by Jared Tarbell with complexification.net. In true open source nature, I wanted to plug his website and give him the correct exposure he deserves!
Looking more into his website, you can find more information about him here. A fun fact is that he is a co-founder of Etsy.com.
I highly recommend going to his gallery of processing examples and playing around, although you will find you wasted an hour or two before you know how it happened. Gallery link here. Some of my favorite examples I’ve created on the website…
Hopefully all these images and examples give everyone some great ideas for where they can take processing – That is where this website and looking at the examples is helping me with the most right now.
Looking around and exploring the world of processing on the web has led me to a ton of different processing examples. The only thing I am truly trying to find out is what are the limitations of what you can do with processing. It seems like such a simple application and language that there must be a limit to where this can take you. Here is an example “j.tarbell” made, you can find the source code and example page here.
This is the Substrate processing sketch run by me (off of their website) after a couple of seconds, it has a strange resemblance to a city grid:
Keeping the script running until it fills up most major space in the frame:
I think the thing that intrigued me the most was that the script essentially never stops (presumably) – after 1.5 hours of letting the script run, the whole field was dense but I could still make out little lines being formed. They had the same feel as maggots moving around in a bin.
Although they give the source code, I was unable to get it working in processing, some errors kept happening. However, they do change up their code and show some examples on their website:
- non-linear substrate growth with 11 crystal instances
Without 'sand painting' effect turned on
This is my first time experimenting with scripting. The first example I edited was Embedded Iteration, something simple and static. I changed the size of the window and the color of the boxes first. Then, I changed the factor by which the boxes decrease in size so that they would fill up the whole screen.
The second example I edited was Puff. This script was more complicated because it included algorithms which defined movement on the screen, so I went through changing numbers to see what kind of effects it would have on the application. The first thing I changed was the speed that the initial puff head moved in the x and y directions. Next, I changed the cell size of the other ellipses (puff body). This made the object appear more dense. I enlarged the size of the window to accommodate the increased size of the object. My next move was to change where the object would first appear on the screen. The original script designated the center of the window and I moved it to the top. Since I was generally making everything bigger, I tried to make my changes proportionate to the original example. Lastly, I increased the size of the arrays so that the object would move further distances and move across the screen quicker. Overall, the scale and speed ratio turned out to be more jittery than the original, which might have something to do with the algorithms at the bottom of the script. It looks like something moving through a strobe light rather than moving fluidly through space on the screen.
The experience trying to draw something from cero it wasn’t as easy at it seemed.
I think my main trouble has been with the punctuation marks to execute the statements and the order of the statements.
Probably have to get more used to the idea of declaration, definition, use.
Despite the obstacles, I finally made my drawing. I draw 3 ellipses, and I tried to change some parameters in each of them as the fill color, the stroke or the dimensions.
Then I also added some movement to the ellipses taking into account that they are also defined by where they are located.
Here is the result into a series of 5 images.
I’ve added some variable functions that make some parameters depend on others
The two first ellipses have a variable “x” (both varies the same way) and a fix “y”.
The third one, varies the “x” the same as the other two, but it also varies the “y depending on the “x” and the “x” dimension depending on the ”y”.
This is my first time using processing, thus to get in touch with it, I’ve took an example and started changing some parameters to see what happens.
First of all I’ve changed the background and the coordinates of the rectangles.
It is possible to see how much the drawing alters just with those simple changes.
After that I started playing with other things as the location of the rectangles in the canvas or the stroke.
Till now I’ve only changed what already exists but I haven’t tried to write anything.
This is a great video if your someone who doesn’t really know what SOPA and PIPA stand for or are intended to do. I myself, was unsure of the overall effect on the internet that these bills would have. Although they SOPA/PIPA acts were postponed thusfar, it is good to know what they are about, because congress will continue to proposed bills like this as long as money is green and media companies pay out. Clay Shirky is easy to listen to and the video is really interesting, see feel free to watch it. Enjoy~ P.S. If SOPA/PIPA were passed I wouldn’t have the ability to share this video with you!
Until next time,
So, Basically I opened processing and went to certain examples which I thought would be a bit more challenging. I found an Image Explode function which was interesting. It is interactive and allows the user to scroll their mouse over the image to pixelate and explode it. Shown below is the original code and result:
Next: I proceeded to adjust some values including figuring out how to change and load the image and resize the screen in order for the new image to fit:
Pictured below are the results:
Above:This is the image by itself- with a re-sized viewing window.
Below: This is the image pixelated after the mouse is moved from left to right.
A Second example included a simple math function where I adjust many values including background color, line stroke, line length, and the location of the segment to create a very different looking function with the same behavior.See below:
Included is the code and highlighted are the changes.
I would like to acknowledge the authors of the original code, and mention that this was used only for testing purposes.
I will continue to experiment with processing, and hopefully it will lead to a rewarding final project for networked technologies.
Until then Cya,
In this second assignment I decided to try and draw a sunset using simple lines and ellipse along with some loop functions. As seen in the image below The script is simply assigning variables to numbers and assigning those numbers to points or coordinates along a line or ellipse. I started by defining the screen size and background color. Next I used simple line and ellipse scripts to draw the first line. Once I had those points established I made it loop 7 times and mirror on the other side. See code and images below for further explanation:
By rbafia at 2012-01-24
By rbafia at 2012-01-24
By rbafia at 2012-01-24
The final image shows when the value of the loop is changes, resulting in a more interesting image. I am still struggling with writing a function that will work exactly how I want it, but that is a limitation of the math behind the script and not the script itself.
Until next week,