Vector3D's getX() and getY() methods cause confusion
Problem to solve
The snippet
Vector3D vec3d = new Vector3D(1.0, 1.5, 2.0);
VPoint vpoint2d = new VPoint(vec3d.getX(), vec3d.getY();
does not produce the expected VPoint (1.0, 1.5) but (0.0, 0.0), because getX() and getY() are inherited from the super class, which is Point. Point itself has the fields
public int x;
public int y;
and getX() and getY() return them as Doubles. During runtime, a Vector3D holds a point with x=y=0.
I think that it would be less confusing if vpoint2d.getX() and vpoint2d.getY() would return x and y of vpoint2d, not the default values of Point.