   perpendicularAxes: ->
     for pair in Utils.pairs @vertices()
       Vec.perpendicularNormal Vec.sub pair[1], pair[0]
-
-  perpendicularAxesFacing: (other) ->
-    dir = Vec.sub other.position, @position
-    (axis for axis in @perpendicularAxes() when Vec.dotProduct(axis, dir) > 0)
 
   calculatePhysicalProperties: ->
     vertices = @vertices()

        minOverlap = overlap
        minAxis = axis

    for axis in other.perpendicularAxesFacing(this)
      us = @projectionInterval axis
      them = other.projectionInterval axis
      overlap = Utils.intervalOverlap us, them
      return false unless overlap > 0
      if overlap < minOverlap
        minOverlap = overlap
        minAxis = Vec.invert axis # separation axis is always A->B

    minAxis

  projectionInterval: (axis) ->
    Utils.projectionInterval @vertices(), axis


  # bookkeeping
  lastAcceleration: [0, 0]

  # Public: Initialize a polygonal body.
  #
