Don't touch the stretch strength when we add full-measure-extra-space.
void set_inverse_compress_strength (Real);
void set_blocking_force (Real);
void set_default_strength ();
+ void set_default_compress_strength ();
+ void set_default_stretch_strength ();
void operator*= (Real);
bool operator> (Spring const&) const;
{
Real full_measure_extra_space = robust_scm2double (l->get_property ("full-measure-extra-space"), 1.0);
spring.set_distance (spring.distance () + full_measure_extra_space);
- spring.set_default_strength ();
+ spring.set_default_compress_strength ();
}
if (options->stretch_uniformly_ && l->break_status_dir () != RIGHT)
void
Spring::set_default_strength ()
+{
+ set_default_stretch_strength ();
+ set_default_compress_strength ();
+}
+
+void
+Spring::set_default_compress_strength ()
{
inverse_compress_strength_ = (distance_ >= min_distance_) ? distance_ - min_distance_ : 0;
- inverse_stretch_strength_ = distance_;
update_blocking_force ();
}
+void
+Spring::set_default_stretch_strength ()
+{
+ inverse_stretch_strength_ = distance_;
+}
+
Real
Spring::length (Real f) const
{