Самое простое решение: c некоторым шагом по времени пересчитывать новое положение прямоугольников до тех пор, пока задача о пересечении двух прямоугольников не будет иметь решения. Как только выявлено пересечение — оно и будет местом контакта. Соответственно, чем меньше шаг по времени, тем точнее результат, но ниже быстродействие.
Самое элегантное аналитическое решение: записать систему уравнений движения вершин прямоугольников и решить её относительно параметра времени на момент касания прямоугольников. Впринципе, первый вариант и есть численное решение второго.