-
- Grob *commonx = bound[LEFT]->common_refpoint (bound[RIGHT], X_AXIS);
- commonx = me->common_refpoint (commonx, X_AXIS);
-
- Grob *next_common_y = line_spanner_common_parent (next_bound);
- Grob *this_common_y = line_spanner_common_parent (bound[LEFT]);
-
- Grob *all_common_y = me->common_refpoint (this_common_y, Y_AXIS);
-
- Interval next_ext = next_bound->extent (next_common_y, Y_AXIS);
- Interval this_ext = bound[LEFT]->extent (this_common_y, Y_AXIS);
-
- Real yoff = this_common_y->relative_coordinate (all_common_y, Y_AXIS);
-
- Offset p1 (bound[LEFT]->extent (commonx, X_AXIS)[RIGHT],
- this_ext.center () + yoff);
- Offset p2 (bound[RIGHT]->extent (commonx, X_AXIS)[LEFT],
- next_ext.center () + yoff);
-
- Offset dz (p2 -p1);
- Real len = dz.length ();
-
- Offset dir = dz * (1 / len);
- dz = (dz.length () - 2 * gap) * dir;
-
- Stencil l (line_stencil (me, Offset (0, 0), dz));
-
- l.translate (dir * gap + p1
- - Offset (me->relative_coordinate (commonx, X_AXIS),
- me->relative_coordinate (all_common_y, Y_AXIS)));
-
- return l.smobbed_copy ();