[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

GreatCircleArc Class Reference

#include <GreatCircles.h>

List of all members.

Public Member Functions

 GreatCircleArc ()
 Create a bad great circle arc.
 GreatCircleArc (double startLat, double startLong, double endLat, double endLong, ViewState &m_viewState)
 Create a great circle arc.
void draw (bool withCross=true) const
 Draw the great circle arc on the fast preview.
float squareDistance (hugin_utils::FDiff2D point) const
 Return the square of the minimal distance between the great circle arc and a coorinate on the panorama.
double getxscale () const

Public Attributes

double m_xscale

Protected Attributes

std::vector< LineSegmentm_lines


Constructor & Destructor Documentation

GreatCircleArc::GreatCircleArc  ) 
 

Create a bad great circle arc.

draw() won't do anything and squareDistance() will return the maximum float.

GreatCircleArc::GreatCircleArc double  startLat,
double  startLong,
double  endLat,
double  endLong,
ViewState m_viewState
 

Create a great circle arc.

Parameters:
startLat lattiude of the first point in degrees.
startLong longitude of the first point in degrees.
endLat lattide of the second point in degrees.
endLong longitude of the second point in degrees.

Todo:
don't check the +/- 180 degree boundary when projection does not break there.


Member Function Documentation

void GreatCircleArc::draw bool  withCross = true  )  const
 

Draw the great circle arc on the fast preview.

Todo:
It is probably more apropriate to use thin rectangles than lines. There are hardware defined limits on what width a line can be, and the worst case is the hardware only alows lines 1 pixel thick.

double GreatCircleArc::getxscale  )  const
 

float GreatCircleArc::squareDistance hugin_utils::FDiff2D  point  )  const
 

Return the square of the minimal distance between the great circle arc and a coorinate on the panorama.

This is an approximation, but should be reasonable.


Member Data Documentation

std::vector<LineSegment> GreatCircleArc::m_lines [protected]
 

double GreatCircleArc::m_xscale
 


The documentation for this class was generated from the following files:

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