I have the feeling that a lot of code could be compressed if we were using a type RealPoint within the class Display3D / Viewer3D.