[an error occurred while processing this directive]
Main Page | Modules | Namespace List | Class Hierarchy | Class List | File List | Namespace Members | Class Members | File Members | Related Pages

hugin1/hugin/GreatCircles.h

Go to the documentation of this file.
00001 // -*- c-basic-offset: 4 -*-
00023 #ifndef GREATCIRCLES_H
00024 #define GREATCIRCLES_H
00025 
00026 #include "ViewState.h"
00027 #include <vector>
00028 #include <hugin_math/hugin_math.h>
00029 
00035 class GreatCircles
00036 {
00037 public:
00042     void setViewState(ViewState * viewState);
00058     void drawLineFromSpherical(double startLat, double startLong,
00059                                double endLat, double endLong);
00060 private:
00061     ViewState * m_viewState;
00062 };
00063 
00064 class GreatCircleArc
00065 {
00066     public:
00071         GreatCircleArc();
00078         GreatCircleArc(double startLat, double startLong,
00079                        double endLat, double endLong,
00080                        ViewState & m_viewState);
00082         void draw(bool withCross=true) const;
00086         float squareDistance(hugin_utils::FDiff2D point) const;
00087                 double m_xscale ;
00088                 double getxscale() const;
00089     protected:
00090         struct LineSegment
00091         {
00092             hugin_utils::FDiff2D vertices[2];
00094             float squareDistance(hugin_utils::FDiff2D point) const;
00096             void doGL() const;
00097                         void doGLcross(int point, double cscale) const;
00098         };
00099         std::vector<LineSegment> m_lines;
00100                 
00101 };
00102 
00103 #endif
00104 

Generated on Mon Sep 20 01:01:25 2010 for Hugintrunk by doxygen 1.3.9.1