I wanted to make something fairly simple and precise from a pre-existing sketch. I wound up creating something a bit more complex, and having plenty of fun in the process.
Here’s the sketch that I started with.
Here’s the subject that it’s based on.
I like my dog. Don’t judge me.
I wanted to make a series of lines and arcs, with pre-existing coordinates that would be simple to program. So I set off writing a few lines to roughly match up with the sketch.
So far so good. But as I kept going, I found that I was having a hard time making it look right.
This is around the point when I decided that the code needed to get a little more sophisticated. I have a little experience in coding from using expressions in After Effects. I was delighted to find that a lot of the basic grammar transferred over pretty well. Specifically, the practice of using variables to be able to edit multiple things at the same time. If I attached the end of one line and the end of another line to a point called, say topLineX, then I could move that one point and have both points respond. That kind of interactivity allowed me to get the picture looking the way I wanted much more easily than just assuming I could put in the right coordinates and everything would be fine.
I easily changed the shape of the jaw by tethering the end point of two arcs to the end points of a single horizontal line between them. I allowed flexibility in eye position by defining their positions relative to a center point. And I anchored everything in the image to a single image called “topCenter.”
Hm, the red on her face looks a little too bright. Maybe I should change “colorA” (which is linked to the fill of four different shapes in the image) to something a little more muted.
That’s better. Now I wonder what she would look like if we narrowed her face a little? There’s a variable called “topArcWidth” that could do that.
Woops! That’s one too many zeroes.
Too narrow. Maybe adjust it back up a little?
I think that looks pretty good.