I am not sure where I should add this since there are a number of threads.Therefore I have added this to the end.
I have now implemented the general approach suggested by BrowserUK.I have checked the result by1. making sure that the rotated points do lie on the second plane
2. checking the distances between corresponding pairs of points on both planes.
Both checks work out fine.So until I read the additional comments about this question I thought that the problme was solved! (I did appreciate that there is a failure condition for parallel planes but this special case is easy to deal with.)
My next task is to look at some of the situations mentioned and see what happens to my current solution.