I wasn’t and still am not trying to be rude – it looks like a neat class, the pages at <a href="http:&#x2F;&#x2F;printingcode.runemadsen.com&#x2F;lecture-intro&#x2F;" rel="nofollow">http:&#x2F;&#x2F;printingcode.runemadsen.com&#x2F;lecture-intro&#x2F;</a> are filled with lovely examples, it’s clear a bunch of work has gone into the library, and it’s great to release code as open source – but I still don’t quite understand.<p>SVG already has a certain kind of “scene graph”. It’s made up of nested groups of objects in the DOM, where each group can accept an affine transformation via a 3x3 matrix (or an explicit rotation, translation, or scale). Like the rest of SVG, working with this can be done either declaratively or procedurally.<p>Is the goal of this library to be low-level building blocks on top of which students will build a more abstracted &#x2F; higher-level library?<p>(P.S. With respect to color, I strongly urge everyone to avoid HSL&#x2F;HSV to the extent possible (I wrote most of this Wikipedia page if that gives me any credibility <a href="https:&#x2F;&#x2F;en.wikipedia.org&#x2F;wiki&#x2F;HSL_and_HSV" rel="nofollow">https:&#x2F;&#x2F;en.wikipedia.org&#x2F;wiki&#x2F;HSL_and_HSV</a>). These color models are a trivially thin shim over RGB, and are not directly relevant to human color vision. Working with them is unintuitive and tends to lead artists to severe misconceptions. Itten’s color theory is no better: Itten was a dabbler and a mystic who ignored the known color science of his time and mostly just made stuff up without much apparent reasoning – in my opinion much less capable with color than other Bauhaus artists such as Paul Klee or Wassily Kandinsky or teachers such as Josef Albers. Albers was a great teacher because (unlike the didactic Itten) he didn’t try to impose his vision, but built his pedagogy around making students learn for themselves through direct experience doing studies with colored paper.<p>Better is to use a system more aligned with the dimensions of human color perception, such as the Munsell color system, CIELAB, or CIECAM02. If you want a Javascript implementation of the latter, I put one up at <a href="https:&#x2F;&#x2F;github.com&#x2F;jrus&#x2F;chromatist" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;jrus&#x2F;chromatist</a> a few years ago. But there are also several javascript libraries around for interacting with the simpler CIELAB and CIELUV models.<p>If you have questions about human color vision, color reproduction technologies, color models, etc. feel free to email me, I’ve spent several years studying those in great depth, and would be happy to recommend books or other resources.)