+ SCM points = SCM_EOL;
+
+ points = scm_cons (scm_from_double (p[X_AXIS]),
+ scm_cons (scm_from_double (p[Y_AXIS]),
+ points));
+
+ p = Offset (0, -thick / 2);
+ b.add_point (p);
+ p += Offset (1, 1) * (blot / 2);
+
+ points = scm_cons (scm_from_double (p[X_AXIS]),
+ scm_cons (scm_from_double (p[Y_AXIS]),
+ points));
+
+ p = Offset (width, width * slope - thick / 2);
+ b.add_point (p);
+ p += Offset (-1, 1) * (blot / 2);
+
+ points = scm_cons (scm_from_double (p[X_AXIS]),
+ scm_cons (scm_from_double (p[Y_AXIS]),
+ points));
+
+ p = Offset (width, width * slope + thick / 2);
+ b.add_point (p);
+ p += Offset (-1, -1) * (blot / 2);
+
+ points = scm_cons (scm_from_double (p[X_AXIS]),
+ scm_cons (scm_from_double (p[Y_AXIS]),
+ points));
+
+ SCM expr = scm_list_n (ly_symbol2scm ("polygon"),
+ ly_quote_scm (points),
+ scm_from_double (blot),
+ SCM_BOOL_T,
+ SCM_UNDEFINED);