Working with Cristobal Valenzuela, through collaborative coding we attempted to make a digital loom.
To kick off the project, we worked side by side, both writing (and breaking) code that resembled a loom. Together we were able to generate the vertical threads and have a dashed line draw itself across the screen as if it were a piece of thread. From there, we decided to see where each of use could take this building block.
My first iteration focused on replacing fixed numbers with variables to allow for adjustments and making the thread turn in the opposite direction when it started a new line. Using the line() function caused some glitchy behaviour around pixel alignment. I had to add in a bit of “calibration” so that as the thickness of the vertical loom elements were changed, the length of the dash was slightly adjusted more than what mathematically seemed correct (i.e. adding 0.5 or 1.5 pixels). When discussing with Cris later, he mentioned that he had the same problem and solved it by drawing the thread with rectangles rather than as lines.
The other component I focused on was adding interactive sliders for users to control the colour of the thread.
As I was working through the code, it was interesting to see the loom restart with every adjustment. However, I think it would be fascinating to build in a degree of “memory” to the system. Each time a user encounters the interactive loom, it’s weaving based on the previous user’s adjustments. This history of multiple changes would be evident by scrolling over the tapestry as it would continue forever—infinite scroll at its best! When no one is “operating” the loom, it would continue to keep weaving and weaving based on whatever state the last user left it in. Although I’m not sure technically how to achieve this, I’m quite interested in this idea of building up a visual artifact of many users’ past interactions.
One thought on “Sketch 03: An Animated Loom”
Comments are closed.