/** \file Class to construct local coordinate system \author Lukas Nellen \version $Id: AugerCoordinateSystem.h 14717 2009-09-17 20:24:36Z lukas $ \date 26 Oct 2003 */ #ifndef _utl_AugerCoordinateSystem_h_ #define _utl_AugerCoordinateSystem_h_ #include #include #include #include namespace utl { class Point; class UTMPoint; /** \class AugerCoordinateSystem AugerCoordinateSystem.h utl/AugerCoordinateSystem.h \brief Local coordinate system according to the auger standard \author Lukas Nellen \date 26 Oct 2003 \ingroup geometry */ template class AugerCoordinateSystemConstructor : public Policy { public: static typename Policy::type Create(const Point& theOrigin, const ReferenceEllipsoid& theEllipsoid, const CoordinateSystemPtr& theReferenceCS); static typename Policy::type Create(const Point& theOrigin, const ReferenceEllipsoid::EllipsoidID& theEllipsoidID, const CoordinateSystemPtr& theReferenceCS); static typename Policy::type Create(const UTMPoint& theOrigin, const CoordinateSystemPtr& theReferenceCS); protected: ~AugerCoordinateSystemConstructor(); }; /// The normal coordinate system type typedef AugerCoordinateSystemConstructor AugerCoordinateSystem; /// For base coordinate systems typedef AugerCoordinateSystemConstructor AugerBaseCoordinateSystem; } #endif // Configure (x)emacs for this file ... // Local Variables: // mode: c++ // compile-command: "make -C .. -k" // End: