/* -*- C++ -*- * Copyright ©2005 Hugo Mills * * This software is distributed under the terms of the GNU GPL v3 * For more information on the GPL, see the file COPYING or * visit http://www.gnu.org/ * * This software is distributed without warranty */ #ifndef DISPLAY_GEODESIC_H #define DISPLAY_GEODESIC_H #include "magellan/mdisplay.h" class Display_Geodesic : public MDisplay { public: Display_Geodesic( Bitmap* bm, XfView* vp, XfMap* proj, XfOrbit* orb, XfSphere* sph, const dvec& _p0, const dvec& _p1, const ivec& col ) : MDisplay(bm, vp, proj, orb, sph), pt0(_p0), pt1(_p1), colour(col) { } virtual ~Display_Geodesic() { } virtual void plot(void); private: dvec pt0, pt1; ivec colour; void midpoint_div(const dvec&, const dvec&, bool, const ivec&, bool, const ivec&, int) const; void split(dvec&, const dvec&, const dvec&) const; }; #endif