-void
-Dimension_cache::invalidate ()
-{
- off_valid_b_ =false;
- valid_b_ = false;
-}
-
-
-void
-Dimension_cache::set_offset (Real x)
-{
- // ugh!
- /*
-
- UGH ! UGH !
-
- */
-
- extra_offset_ = x;
-}
-
-void
-Dimension_cache::translate (Real x)
-{
- extra_offset_ += x;
-}
-
-Real
-Dimension_cache::relative_coordinate (Dimension_cache *refp) const
-{
- if (refp == this)
- return 0.0;
-
- /*
- We catch PARENT_L_ == nil case with this, but we crash if we did
- not ask for the absolute coordinate (ie. REFP == nil.)
-
- */
- if (refp == parent_l_)
- return get_offset ();
- else
- return get_offset () + parent_l_->relative_coordinate (refp);
-}