applications.collages.collageAlgebra(non-isosceles):
{
  ntColour = const(.8),

  angle = const(55),
  tipX = const(tan(90-#angle)/(tan(#angle)+tan(90-#angle))),
  tipY = const(1 + tan(#angle)*#tipX),

  part = { filledPolygon((0,0),(1,0),(1,1),(#tipX, #tipY),(0,1)) },
  
  sample-outline = { polygon((0,0),(1,0),(1,1),(#tipX, #tipY),(0,1))},
  sample-filled = { filledPolygon((0,0),(1,0),(1,1),(#tipX, #tipY),(0,1))[#ntColour,#ntColour,#ntColour] }
                       + #sample-outline,
  sample-arrow = { filledPolygon((0,0),(.075,.25),(-.075,.25))},
  sample = #sample-filled + #sample-outline + #sample-arrow,
  S = #sample,
  
  f1 = similarity((0,0) -> (0,1), (1,0) -> (#tipX, #tipY)),
  f2 = similarity((0,0) -> (#tipX, #tipY), (1,0) -> (1,1)),
  F = < #part, f1, f2 >,
  
  flip = scale(-1,1) . translate(1,0),
  flip = <flip>  
}
