#ifndef jbt_circle_h #define jbt_circle_h #include "primitive.h" class jbt_circle : public jbt_primitive { public: jbt_circle( jFlt a=1, jFlt r=0.5 ); jFlt getCircleRadius() const { return radius; } void setCircleRadius( jFlt cr ) { radius = cr; } private: void precompute(); void computeBound(); jVec2 uvl( const jVec3& ); void bracket( const jRay& ray, jbt_brackets& ); void seedPoints( jVec3list& ) const; jbt_blobtree::Type type() const { return jbt_blobtree::jbtCircle; } jVec3 displacement(); jVec3 cp; jFlt radius; }; #endif