designcoding
About Table of Contents Keywords Monthly Archive
Support designcoding!

Karyokinesis

November 2, 2013 | Algorithms
#grasshopper #pattern #timer #voronoi

While searching for a way to work with random points and growing populations, this idea appeared accidentally. I wasn’t trying to mimic the behavior of Karyokinesis of biological cells (in fact I’m in serious doubt about biomimicry in general). The trick is to use a timer + data recorder + a knob for the arbitrary user input. It starts to breed when you start the timer, but to change the evolution speed, just roll the knob!  Of course, the knob is as precise as in other input types, but somehow it looks fuzzier to me. Combined with a time-based change, it becomes even crazier! This looks like an example of real-time animation in Grasshopper, without the need for Kangaroo.

Karyokinesis animation

This Grasshopper definition generates an interactive animation visually resembling the cellular division. I created the parametric model in Grasshopper with native components. Thus, no add-ons are necessary for it to work. There is one VB.net script that is responsible for the timer component that re-runs the script every 20 milliseconds. The output of the model is a set of closed curves. Therefore, the outputs are ready for more exploration in Grasshopper. You can use this model further to investigate similar animations.

Karyokinesis Grasshopper definition

You can rebuild the definition by looking at the diagram above. The VB script includes an if condition for rs input and B=Second(now).

Karyokinesis grasshopper, pattern
Grasshopper definition (GH)Download

Cite this post

Yazar, T. (2013, November 2). Karyokinesis. designcoding. Retrieved August 24, 2026, from https://www.designcoding.net/karyokinesis/

Related Posts

Headbanging Points

December 20, 2013

In this fun experiment, points rock and roll! It should be based on a sound input of course but this is only a test to see if I can handle a timer and graph input at the same time. I’ll modify this definition to actuate with sound.  The use of the timer component gives a certain degree of randomness to the overall formation. To run this definition we need a VB script to update a certain value. The code inside of…

Regenerating Random Numbers

January 2, 2013

Just a quick tip as I thought might be useful in some cases. Generating random numbers in architectural scripting is not a too catchy thing for designers. It is for sure, we want every parameter to be under our control (as if it were possible!). I was thinking about that in Grasshopper. A dataflow graph such as in Grasshopper regenerates whenever necessary (a change on an input value “fires” every connected component), therefore random number component requires your action (for…

Animate Sketching of a Parametric Truss

July 25, 2012

Previous studies on the timer component were based on understanding its use. This time, I tried to implement it in a geometric design task. Moreover, manipulating the timer component to change the regular animation of parameters. Time does not have to be equally divided into sequences. Rather, new possibilities may emerge with different time flows. A simple triangulation system is developed with a potential manipulation, based on a timer. This definition is exciting and new for me because I’m not…

MusicXML to Grasshopper

July 20, 2012

We can model a musical composition using native Grasshopper components. After the experiments with the timer component (here and here), I managed to build a definition that allows us to produce outputs in various time intervals. I converted a small part of Bach’s Bouree in E-Minor into Grasshopper as a guitar tablature. I used Guitar Pro 5’s MusicXML export function to convert classical guitar tablature into XML data, then organized that file in Excel to suit my data tree design…

Metronome Continued

July 19, 2012

Here is today’s improvement on my metronome with the timer component, which started here. It’s straightforward to tell Grasshopper about seconds and organize it according to it. Using an interval smaller than 1 second, this small script catches every second and returns a different value. However, it’s much harder to implement smaller values than seconds. It seemed easy at first sight but getting accurate results smaller than seconds requires working with milliseconds. You can output the current millisecond’s value, but…

  • Chapters

    • Algorithms
    • Discourses
    • Fabrications
    • Studios
  • Explore

    • All Keywords
    • Table of Contents
    • Monthly Archive
    • #rhino-python
    • #polyhedra
    • #parametric-surface
    • #robot
    • #tessellation
    • #boolean
    • #kuka-prc
    • #dome
    • #design-object
    • #image-sampler
    • #tutorial
    • #terrain
    • #sandblasting
    • #stone
    • #parametric-curve
    • #animation
    • #cycloid
    • #art
    • #aperiodic
    • #tiling
  • Search

  • Support designcoding!

  • Enjoying designcoding? Support me on Patreon to keep it growing. Thank you!

  • copyright 2026 designcoding.net | about | privacy policy | end user license agreement