/* * NICE-Core - efficient algebra and computer vision methods * - libimage - An image/template for new NICE libraries * See file License for license information. */ #ifndef _CIRCLE_IMAGE_H #define _CIRCLE_IMAGE_H #include #include #include #include namespace NICE { /** * A Drawable circle. */ template class CircleT : public Drawable

{ private: Coord center; int radius; protected: void doDraw(ColorImageT

&image, const ColorT

& color) const; void doDraw(ImageT

&image, const P& gray) const; public: //! Default constructor CircleT(); CircleT(const Coord ¢er, const int radius); CircleT(const Coord ¢er, const int radius, const ColorT

& _defaultColor); //! Copy-Constructor /*! \param arg class to copy */ CircleT(const CircleT

& arg); //! Destructor of CircleT virtual ~CircleT(); //! Assignment operator /*! \param ex class to copy * \return a reference to this class */ CircleT

& operator=(const CircleT

& ex); //! Compare operator /*! \param ex class to compare * \return true if class content is equal */ bool operator==(const CircleT

& ex) const; //! Compare operator /*! \param ex class to compare * \return true if class content is not equal */ bool operator!=(const CircleT

& ex) const; }; typedef CircleT Circle; } // namespace NICE //#ifdef __GNUC__ #include "core/image/CircleT.tcc" //#endif #endif /* _CIRCLE_IMAGE_H */