This is virtually a Ray with a radius. Maybe you could give them both the same baseclass/codebase or at least unify the source and Ray::origin names in one way or the other.