More selected projects


“without_within” is a morphing interactive 3D torus created with Processing. Based on the equation for Gray’s Klein bottle, the form expands/contracts and folds in/out of itself using sin and cos functions, sometimes with noise. It is the most recent expression of a concept I’ve been exploring for the past 2+ years – the torus as a figuration of energetic exchange/flow. 

produced by: Valeria Radchenko


My image tells a story of process, of transformation and energetic exchange; of obsession, translation, self-discovery. The concept of the external being internal and vice versa is highly interesting to me and is something I find myself returning to frequently. It is a perspective I choose to see the world through, that we’re all individual expressions of the universe, of one whole, mirroring each other and constantly recycling matter and energy. I work a lot with re/up cycling, pulling ideas and concepts I’ve had in the past and finding new ways to combine/update them, which in itself is also toroidal. (I’ve already used this work in a new way, as part of a projection for a musical performance).

The torus in its simplest form resembles a donut and shows how energy moves. It is expressed by nature on both micro and macro levels, from the shape of apples to the magnetic field around stars. Initially I was inspired by a vision of love, of beings merging/becoming each other, becoming something more than the sum of its parts. How we lose ourselves in this process of symbiosis, just to come right back where we began – arriving at the self through heartbreak. 

(see previous explorations of toroidal forms here)


I based my process on Daniel Shiffman's videos about Spherical Geometry and Supershapes. I was inspired by the way he would find concepts and equations, break them down and translate them into code. I created a 3D mesh using quadstrips, and then applied sin/cos movement and colour based on the Spherical Geometry video but using an equation for a torus instead. I started with creating a simple donut torus, then tried a couple other equations until settling on Gray's Klein Bottle. The last step was adding variance through conditionals – when a certain variable reached a certain number, noise would be added to another. I tried using noise in a few different ways, but found it most harmonius when used sparingly as the starting value for variable "a" (see code below). The values I settled on took quite a lot of tweaking, as certain ratios produce different forms.

simple torus code here
without_within code here


I was initially interested in translating drawings of patterns into code, using the torus form as a structural vessel to guide them, but struggled to find a way to do this algorithmically given the amount of time I had. I experimented with creating my own brush and applying the graphics as a texture, but didn’t like the way it wrapped around the shape (see images below). Through the process of working on this project, I became more interested in the varied geometry of the torus itself, as well as the movement of something turning in on itself, the external becoming internal and blossoming out again, and the beautiful chaos of it all. By reducing the opacity and adding movement, there was no longer a need for adding my patterns as a texture.  I used to draw them to express movement, but here the movement was happening in the form itself! It felt complete to me. I kept the background black to let the shape stand out and speak for itself, suspended in void. 



Below are a few images of the process:

1. Simple torus shape
2. Patterns drawing (not done with code)
3. Applying the patterns drawing as a texture to a sphere. Did not like how it wrapped around.
4. A curve drawing app, an experiment for creaitng patterns
5. Gray's Klein Bottle experiment


  • gallery-image
  • gallery-image
  • gallery-image
  • gallery-image
  • gallery-image

Daniel Shiffman's tutorials on Spherical Geometry and Supershapes                                                                         

Paul Bourke on toroidal forms, specifically the equation for Gray's Klein Bottle

V.K's code for saving frames                                         

*Retrospectively reflecting on my work, I see a thread of inspiration drawing from Bjork’s music video for The Gate, specifically a mutating animation between 1:09-2:17 mins. The softness and colourful quality of my torus reminds me of the video, though my animation is nowhere nearly as detailed, but perhaps maintains a similar glowing quality. Andrew Thomas Huang is the director, an artist I also love and am inspired by.