summaryrefslogtreecommitdiff
path: root/src/sims/dynamics/Constraint.scala
blob: 74c2af3f5f0e279bea63162ec030046c80f2e5a0 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
/*
 * Simple Mechanics Simulator (SiMS)
 * copyright (c) 2009 Jakob Odersky
 * made available under the MIT License
*/

package sims.dynamics

/**Randbedingungen erben von dem Trait <code>Constraint</code>.
 * Fuer jeden Constraint koennen Position und Geschwindigkeit korrigiert werden.
 * Ihre Implementierung wurde von Erin Catto's box2d inspiriert.*/
trait Constraint {
  
  /**Korrigiert die Geschwindigkeit der Koerper damit diese den Randbedingungen entsprechen.*/
  def correctVelocity(h: Double): Unit
  
  /**Korrigiert die Position der Koerper damit diese den Randbedingungen entsprechen.*/
  def correctPosition(h: Double): Unit
}