The four triangles in the center of the animation all have to be aware of each other in order to give the triangles above them breathing room.
Here is the code for a negative mask on the triangle second from the top. It reads all the points of the first triangle, expands these, allows for rotation, and returns a triangle only slightly bigger than the top one. The expansion is done in a different setting.