Thanks for the help, i've managed to figure out a way of doing it using a similar matric, in this case just performng a rotation along each axis seperately.
However now i've got what i thought to be the simpler of the problems to figure out however my first method turned out to not be correct
In this case it is just a simple scaling between two points in a 3D space.
for example i have point A. with x,y,z corrdinates (54.44, -11.129, 4.884) and point B (53.823, -13.98, 9.326). These two points have a distance of 5.314156001 angstroms for example.
Now i pick a new set of coordinates for B say (48.623, -17.925, 23.662) which now has a disatnce of 20.79539935 angstroms from A.
Obviosuly now i want to reduce to the correct distance, however for the life of me i can't figure out how, i thought at first it was a simple scaling by the ratio of the two distances, i.e. a factor of 4.8088, for each coordinate however that doesn't work becuase i think it uses coord (0,0,0) as the origin and not point A.
I can't help but think it is something really simple to do, however i don't know
Any help is appreciated
Regards Wolfe
*edit*
NM lol i think i have it, take away point A's coordinates from point B's, then reduce by the ratio and then add on point A's coordinates again. i beleive thats it....