Fix extremities snapping (fixes #718)
Switch from 3D to 2.5D everywhere for snapping (ref #718, #697)
Use equivalent function, supposed to always return point