summaryrefslogtreecommitdiff
path: root/src/main/scala/sims/collision/Pair.scala
blob: 02880dc7d59c27eef47d0ba9fb3938456acda300 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
/*
 * Simple Mechanics Simulator (SiMS)
 * copyright (c) 2009 Jakob Odersky
 * made available under the MIT License
*/

package sims.collision

import scala.language.implicitConversions

import sims.dynamics._

/**Pair of shapes.*/
case class Pair(s1: Shape, s2: Shape){
  
  override def equals(other: Any) = { //overriden to prevent removal during "GridDetector.getPairs" 
    other match {
      case Pair(a, b) => ((a eq this.s1) && (b eq this.s2)) || ((b eq this.s1) && (a eq this.s2))  
      case _ => false
    }
  }
}

object Pair {
	implicit def pair2Tuple(x: Pair) = (x.s1, x.s2)
}