# Self-organizing curves

Minimal path systems by Frei Otto.

Grasshopper / C# / Rhino common script is based on Algortihmicdesign.net.

**00. Vector operations:**

- vector substraction – find the vector/direction between two points

- vector multiply – multiply direction

- vector addition – move point

**01. Nurbs curve control points:**

- access curve’s control points with c# Rhino Common

**02. Attractor:**

- loop through curve’s control points

- attract point if the distance is smaller then treshold

- replace nurbs control point with new one

**03. Multiple attractors:**

- loop through curve’s control points

- find the closest attractor

- attract point with defined value if the distance is smaller then threshold

- replace nurbs control point with new one

**04. Curve self attraction:**

- loop through curves

- loop through curve’s control points

- find closest point in other curves

- attract selected point with defined value if the distance is smaller then threshold

- replace nurbs control point with new one

**05.Self-organizing curves:**

- Attractors + Curve self-atrraction