Protein contour modelling and computation for complementarity detection and docking