Axis_group_element::set_axes (Axis a1, Axis a2)
{
Graphical_axis_group::set_axes (a1,a2);
- dim_cache_[X_AXIS]->set_empty ((a1 != X_AXIS && a2 != X_AXIS));
- dim_cache_[Y_AXIS]->set_empty ((a1 != Y_AXIS && a2 != Y_AXIS));
+ set_empty (a1 != X_AXIS && a2 != X_AXIS, X_AXIS);
+ set_empty (a1 != Y_AXIS && a2 != Y_AXIS, Y_AXIS);
}
Axis_group_element::extra_extent (Axis a )const
{
Interval g;
- purge_extra (); // Yeah yeah, const correctness.
+ Axis_group_element* urg = (Axis_group_element*)this;
+ urg->purge_extra (); // Yeah yeah, const correctness.
for (int i=0; i < extra_elems_.size (); i++)
{
- Interval ge = extra_elems_[i]->extent (a);
- ge += extra_elems_[i]->relative_coordinate (dim_cache_[a], a);
+ Interval ge = extra_elems_[i]->relative_coordinate (this, a)
+ + extra_elems_[i]->extent (a);
g.unite (ge);
}
return g;
i++;
}
}
+
+Interval
+Axis_group_element::extent (Axis a) const
+{
+ return Graphical_element::extent (a);
+}
+