virtual unsigned get_intersections(const Ray<T, D> &, SurfacePoint<T, D> *, unsigned) const;
};
virtual unsigned get_intersections(const Ray<T, D> &, SurfacePoint<T, D> *, unsigned) const;
};
template<typename T, unsigned D>
inline HyperSphere<T, D>::HyperSphere(T r):
radius(r)
template<typename T, unsigned D>
inline HyperSphere<T, D>::HyperSphere(T r):
radius(r)