IntegralCurve constructor
IntegralCurve(
- Curve original
The constructor that takes the original
curve.
Implementation
factory IntegralCurve(Curve original) {
double integral = 0.0;
final values = <double, double>{};
for (double t = 0.0; t <= 1.0; t += delta) {
integral += original.transform(t) * delta;
values[t] = integral;
}
values[1.0] = integral;
// Normalize.
for (final double t in values.keys) {
values[t] = values[t]! / integral;
}
return IntegralCurve._(original, integral, values);
}