Commit 30a8e04b authored by Hans Muller's avatar Hans Muller

Added missing clamped_simulation.dart file

parent 8fb59f1d
......@@ -10,6 +10,7 @@ library animation;
export 'src/animation/animated_simulation.dart';
export 'src/animation/animated_value.dart';
export 'src/animation/animation_performance.dart';
export 'src/animation/clamped_simulation.dart';
export 'src/animation/curves.dart';
export 'src/animation/forces.dart';
export 'src/animation/scheduler.dart';
......
// Copyright 2015 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
import 'package:newton/newton.dart';
class ClampedSimulation extends Simulation {
ClampedSimulation(this.simulation, {
this.xMin: double.NEGATIVE_INFINITY,
this.xMax: double.INFINITY,
this.dxMin: double.NEGATIVE_INFINITY,
this.dxMax: double.INFINITY
}) {
assert(simulation != null);
assert(xMax >= xMin);
assert(dxMax >= dxMin);
}
final Simulation simulation;
final double xMin;
final double xMax;
final double dxMin;
final double dxMax;
double x(double time) => simulation.x(time).clamp(xMin, xMax);
double dx(double time) => simulation.dx(time).clamp(dxMin, dxMax);
bool isDone(double time) => simulation.isDone(time);
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment