@Override public double tOf(final Point3D a) { Double d = a.sub(origin).dot(a.asNormal()); Double e = direction.dot(a.asNormal()); return d / e; }