#include "molecule.hh"
#include "paper-outputter.hh"
-
-
void
Spanner::do_print() const
{
break_points.insert (left,0);
break_points.push (right);
-
for (int i=1; i < break_points.size(); i++)
{
Breaking_information info;
while (flip(&i) != 1);
}
-
void
Spanner::set_bounds(Direction d, Item*i)
{
{
i->used_b_ = true;
}
+
+ if (d== LEFT)
+ {
+ dim_cache_[X_AXIS]->parent_l_ = i->dim_cache_[X_AXIS];
+ }
if (spanned_drul_[Direction(-d)] == spanned_drul_[d]
&& i)
}
Spanner::Spanner (Spanner const &s)
- :Score_element (s)
+ : Score_element (s)
{
spanned_drul_[LEFT] = spanned_drul_[RIGHT] =0;
}
-void
-Spanner::output_processing ()
-{
- if (get_elt_property (transparent_scm_sym) != SCM_BOOL_F)
- return;
-
- output_p_ = do_brew_molecule_p ();
- Offset left_off (spanned_drul_[LEFT]->absolute_coordinate(X_AXIS), 0);
- Offset o = absolute_offset() + left_off;
- pscore_l_->outputter_l_->output_molecule (output_p_, o, classname (this));
-}
Interval
Spanner::do_width() const
span_p->set_bounds(LEFT,info.bounds_[LEFT]);
span_p->set_bounds(RIGHT,info.bounds_[RIGHT]);
pscore_l_->typeset_element (span_p);
-
info.broken_spanner_l_ = span_p;
span_p->handle_broken_dependencies();
return broken_info_.size();
}
-
-
-
Array<Rod>
Spanner::get_rods () const
{
return r;
}
+Array<Spring>
+Spanner::get_springs () const
+{
+ Array<Spring> s;
+ return s;
+}
+
void
Spanner::do_space_processing ()
{
{
rs[i].add_to_cols ();
}
+
+ Array<Spring> ss (get_springs ());
+ for (int i=0; i < ss.size (); i++)
+ {
+ ss[i].add_to_cols ();
+ }
}