+MAKE_SCHEME_CALLBACK (Stem_tremolo, pure_height, 3);
+SCM
+Stem_tremolo::pure_height (SCM smob, SCM, SCM)
+{
+ Item *me = unsmob_item (smob);
+
+ /*
+ Cannot use the real slope, since it looks at the Beam.
+ */
+ Stencil s1 (untranslated_stencil (me, 0.35));
+ Item *stem = unsmob_item (me->get_object ("stem"));
+ if (!stem)
+ return ly_interval2scm (s1.extent (Y_AXIS));
+
+ Direction stemdir = get_grob_direction (stem);
+ if (stemdir == 0)
+ stemdir = UP;
+
+ Spanner *beam = Stem::get_beam (stem);
+
+ if (!beam)
+ return ly_interval2scm (s1.extent (Y_AXIS));
+
+ Interval ph = stem->pure_height (stem, 0, INT_MAX);
+ Stem_info si = Stem::get_stem_info (stem);
+ ph[-stemdir] = si.shortest_y_;
+ int beam_count = Stem::beam_multiplicity (stem).length () + 1;
+ Real beam_translation = get_beam_translation (me);