+ ControlEvent* after = (*range.second);
+ range.second--;
+ ControlEvent* before = (*range.second);
+
+ double vdelta = after->value - before->value;
+
+ if (vdelta == 0.0) {
+ return before->value;
+ }
+
+ double tdelta = x - before->when;
+ double trange = after->when - before->when;
+
+ return before->value + (vdelta * (tdelta / trange));
+
+#if 0