Ruban is an attempt to mix Constraint Programming and Creative Coding. Two disciplines that are not so often mixed together. The Constraint Programming algorithm generates a structure of 'pipes' that are constrained to communicate with each other. Additional constraints, such as vertical/horizontal/central symmetry, can be added to enrich the resulting pattern. The structure is generated using Gecode C++ library.
After structure generation, the structure is drawn on screen with OpenFrameworks (A C++ framework for creative coding).
Diagonal Symmetry

My personal favorite. The original idea was to apply this particular constraint to the generated pattern.
Horizontal Symmetry
Vertical Symmetry
 
It is quite common to see "face like" patterns when applying this constraint.
Details
Thanks for watching!
 
Ruban
Published:

Ruban

An attempt to mix Constraint Programming and Creative Coding.

Published: