added collision position calculus