# Capital M - projection

**URL:** <https://discourse.libcinder.org/t/capital-m-projection/250>\
**Category:** Gallery\
**Created:** [September 5, 2016, 10:48am UTC](https://discourse.libcinder.org/t/capital-m-projection/250 "2016-09-05T10:48:51Z")\
**Posts on this page:** 6\
**Page:** 1

<div class="post-metadata">

**Author:** ![lab101](https://yyz2.discourse-cdn.com/flex030/user_avatar/discourse.libcinder.org/lab101/32/583_2.png) [@lab101](https://discourse.libcinder.org/u/lab101)\
**Post date:** [September 5, 2016, 10:48am UTC](https://discourse.libcinder.org/t/capital-m-projection/250/1 "2016-09-05T10:48:51Z")

</div>

Hey,

Some while ago I experimented a bit with the genetic algorithm.  
Thx to the nature of code videos and book it was very easy to implement.

I marked 9 propulsion points on the building which where used to steer the dots and lines to their ideal spot in order to form the capital M. I used genetic algorithm to find the ideal pulse sequence for the propulsion points. For each new breed I used 9000 simulations with a very low mutation rate in order to get results in between 10 or 50 generations. Took around 3 hours to find a working sequence.

https://player.vimeo.com/video/180404689

The result was rendered to a video so my program was only needed to find an interesting sequence and render this to a video. You can have a look at the code on [Github](https://github.com/lab101/CapitalM) but don’t expect a super clean codebase 🙂

 ![](https://canada1.discourse-cdn.com/flex030/uploads/libcinder/original/1X/cc67176388b7c10c39bcd6f1a75855d0af380600.png)

Used Cinder-NanoVG for the smooth rendering.

---

<div class="post-metadata">

**Author:** ![andrewfb](https://yyz2.discourse-cdn.com/flex030/user_avatar/discourse.libcinder.org/andrewfb/32/2_2.png) [@andrewfb](https://discourse.libcinder.org/u/andrewfb)\
**Post date:** [September 5, 2016, 9:14pm UTC](https://discourse.libcinder.org/t/capital-m-projection/250/2 "2016-09-05T21:14:40Z")

</div>

Really nice results - this turned out great. If you’re up for it I’d encourage you to submit it to the [Cinder gallery](https://libcinder.org/gallery).

-Andrew

---

<div class="post-metadata">

**Author:** ![paul.houx](https://yyz2.discourse-cdn.com/flex030/user_avatar/discourse.libcinder.org/paul.houx/32/31_2.png) [@paul.houx](https://discourse.libcinder.org/u/paul.houx)\
**Post date:** [September 6, 2016, 9:41am UTC](https://discourse.libcinder.org/t/capital-m-projection/250/3 "2016-09-06T09:41:13Z")

</div>

Cool use of technology. I like!

---

<div class="post-metadata">

**Author:** ![lab101](https://yyz2.discourse-cdn.com/flex030/user_avatar/discourse.libcinder.org/lab101/32/583_2.png) [@lab101](https://discourse.libcinder.org/u/lab101)\
**Post date:** [September 6, 2016, 8:25pm UTC](https://discourse.libcinder.org/t/capital-m-projection/250/4 "2016-09-06T20:25:18Z")

</div>

Thx for the nice words, really appreciate it!

---

<div class="post-metadata">

**Author:** ![mike](https://yyz2.discourse-cdn.com/flex030/user_avatar/discourse.libcinder.org/mike/32/56_2.png) [@mike](https://discourse.libcinder.org/u/mike)\
**Post date:** [September 6, 2016, 11:27pm UTC](https://discourse.libcinder.org/t/capital-m-projection/250/5 "2016-09-06T23:27:13Z")

</div>

This is really beautiful! The colors, composition, and movement… well done!

---

<div class="post-metadata">

**Author:** ![hurpyderpy](https://avatars.discourse-cdn.com/v4/letter/h/919ad9/32.png) [@hurpyderpy](https://discourse.libcinder.org/u/hurpyderpy)\
**Post date:** [September 18, 2016, 7:01pm UTC](https://discourse.libcinder.org/t/capital-m-projection/250/6 "2016-09-18T19:01:01Z")

</div>

So cool!🕶
