code: @Pure
  	@Override
  	public double distance(Point3D p) {
  		double d = FunctionalPoint3D.distancePointPoint(getX(), getY(), getZ(), p.getX(), p.getY(), p.getZ()) - getRadius();
  		return MathUtil.max(0., d);
  	}
docs: {@inheritDoc}