Observations
- This piece has a white background with a square-shaped cluster of short black lines within it. There is a consistent margin along the top and sides of the square, with extra space at the bottom to accommodate the inscription.
- The square makes up 93.5% of the width of the artwork, and 91% of the height of the artwork.
- The margin is approximately 3% of the width of the square.
- The extra space at the bottom is equal to 14.5% of the width of the square.
- The square is made up of an invisible 56x56 grid. It's not clear how this would scale, because all the iterations I can find are the same size. Would the number of rows and columns increase with a consistent margin, or would it scale proportionately so there are still 56 rows and columns of larger lines? 56 is about 10% of the square width in pixels.
- Each point on the grid is the midpoint of one of the lines. The points are NOT the endpoints of the lines (thanks Golan.)
- The length of each line is approximately 3.4% of the width of the square.
- The angles of the lines range from 0 to 2π radians.
- However, each iteration seems to have a slight horizontal or vertical bias (more lines are oriented with an acute or obtuse angle, respectively, with respect to the orientation of the artwork.)
- Approximately 7% of the lines are missing in clusters or 'interruptions'.
- The clusters are fairly low frequency - around 3 or 4 large clusters (10+ lines missing) will appear in a given iteration.
- In the bottom right corner, one can make out the artist's name and a date penciled in cursive handwriting.
- The artist's name is inscribed V. Molnar 20% of the time, V.M. 60% of the time, and missing 20% of the time.
- The year is inscribed 100% of the time.
- The month is inscribed only 20% of the time.
Reflection
I needed help to discover that the line's midpoints originated from the grid, and not their endpoints. I implemented debug keys to refresh the composition (r) and to color-code the Perlin noise distribution (c.)
The distribution of 'interruptions' in my piece doesn't quite match the original artwork. Though I was able to adjust their spatial frequency to a satisfactory point, Perlin noise creates slightly blobbier gaps relative to the more rectangular or 'jagged' gaps in Molnar's work.
I tried implementing the piece without Perlin noise, by generating a fixed area's worth of randomly placed rectangles (while total area is less than 10% of the composition, make more rectangles), and only rendering lines that didn't intersect with those rectangles. However, this involved a triple for loop that immediately crashed my computer. There is probably a syntax error somewhere. The secrets of Molnar's implementation continue to elude me.
I'm also left with an outstanding question about the scale of the work. As canvas size increases, would Molnar want the number of rows and columns to increase, or would everything increase proportionally?
Screenshots
GIF