Week 1: Elephant Drawing

For my Week 1 drawing sketch I developed an elephant out of triangle elements.  Elephants are my favorite animal and the mascot of Tufts University, where I got my undergraduate degree.  I also wear an elephant necklace almost everyday.  

Once I decided to make an elephant for my sketch I completed a quick google search for elephant sketches.  In my search I was inspired by this image of an elephant sketched out of triangles and other basic shapes (Figure 1).

  Figure 1 : Inspiration sketch

Figure 1: Inspiration sketch

I sketched out my own version of this elephant, simplifying the shape in a way that I could recreate in p5 (Figure 2).

  Figure 2 : Paper sketch/map

Figure 2: Paper sketch/map

As you can see from Figure 2, I first labeled each triangle with a distinct number. Then, starting from #1, I mapped out each triangle into my p5 sketch.  Along the way, I recorded the coordinates of each vertex so that I could easily connect the triangles as I went.  In order to stay consistent and not mix up the coordinates, I started with the vertex on the bottom most point of each triangle and then worked my way clockwise.  This way the mapping of each triangle was the same for any adjustments I made later. The coordinates were more or less guessed based on the way I drew my initial paper drawing.  Eventually I ended up with a p5 sketch that resembled my original drawing (Figure 3).

  Figure 3 : Initial p5 line sketch

Figure 3: Initial p5 line sketch

Once this was complete, I played around with color and fill() to incorporate some depth into the image.  I also removed the stroke lines to enhance the final image.  My process is shown in the video below (Figure 4).

Figure 4: Process

The final product is shown in the image below…

  Figure 5 : Final Product

Figure 5: Final Product

Overall, I am pleased with how this sketch came out and the method I developed to execute it.  My system of recording the coordinates sped up this process quite a bit.  I also think that the method of sketching without a fill initially was an efficient use of time.  In the beginning I was planning to use rectangles and ellipses in addition to triangles in order to add more complexity to the image.  Once I began coding, however, I noticed that we do not have the tools yet to rotate shapes so triangles seemed like the best shape to implement.  I could manipulate the vertices of the triangles using the triangle() function without needing to know how to rotate the triangle.  I think my lack of computational knowledge here taught me a great coding lesson.  In coding, there is never one way to do something.  In this case my lack of the rotation commands forced me to find a new way to get a similar outcome.  I imagine I will come across this type of problem a lot as I continue this term in computational media. My code is made mostly of changing the fill color,  drawing a triangle and repeating.  I see how the repetition could be solved and shortened with the use of conditional statements that we will learn later in the semester.  I also could see how an algorithm might be able to be developed in order to choose the coordinates of the vertices instead of using a guessing system.  While developing this sketch, I found the addition of color to be the most difficult of this process.  There are so many combinations of colors to choose from and finding an assortment that I liked for this sketch took some time.  There were some instances where I was attempting to get a general shade of one color and ended up with a completely different color.  I am definitely going to need to practice using the RGB color system.  Using the p5 editor for this project was generally enjoyable, I don't have any complaints about it yet.