// sphere.h // // Copyright (C) 2002, Chris Laurel // // This program is free software; you can redistribute it and/or // modify it under the terms of the GNU General Public License // as published by the Free Software Foundation; either version 2 // of the License, or (at your option) any later version. #pragma once #include namespace celmath { template class Sphere { public: Sphere() : center(Eigen::Matrix::Zero()), radius(static_cast(1)) { } Sphere(T _radius) : center(Eigen::Matrix::Zero()), radius(_radius) { } Sphere(const Eigen::Matrix _center, T _radius) : center(_center), radius(_radius) { } public: Eigen::Matrix center; T radius; }; using Spheref = Sphere; using Sphered = Sphere; } // namespace celmath