10 #if !defined(GEOGRAPHICLIB_OSGB_HPP)
11 #define GEOGRAPHICLIB_OSGB_HPP 1
18 # pragma warning (push)
19 # pragma warning (disable: 4251)
47 static const char*
const letters_;
48 static const char*
const digits_;
55 tileoffx_ = 2 * tilegrid_,
56 tileoffy_ = 1 * tilegrid_,
57 minx_ = - tileoffx_ * tile_,
58 miny_ = - tileoffy_ * tile_,
59 maxx_ = (tilegrid_*tilegrid_ - tileoffx_) * tile_,
60 maxy_ = (tilegrid_*tilegrid_ - tileoffy_) * tile_,
64 static real computenorthoffset();
65 static void CheckCoords(real x, real y);
82 real& x, real& y, real& gamma, real& k) {
83 OSGBTM().
Forward(OriginLongitude(), lat, lon, x, y, gamma, k);
85 y += computenorthoffset();
103 real& lat, real& lon, real& gamma, real& k) {
105 y -= computenorthoffset();
106 OSGBTM().
Reverse(OriginLongitude(), x, y, lat, lon, gamma, k);
112 static void Forward(real lat, real lon, real& x, real& y) {
114 Forward(lat, lon, x, y, gamma, k);
120 static void Reverse(real x, real y, real& lat, real& lon) {
122 Reverse(x, y, lat, lon, gamma, k);
154 static void GridReference(
real x,
real y,
int prec, std::string& gridref);
173 static void GridReference(
const std::string& gridref,
175 bool centerp =
true);
193 return pow(
real(10),
real(48401603 - 100000000) / 100000000)
206 {
return real(20923713 - 20853810) /
real(20923713); }
216 return pow(
real(10),
real(9998268 - 10000000) / 10000000);
245 #if defined(_MSC_VER)
246 # pragma warning (pop)
249 #endif // GEOGRAPHICLIB_OSGB_HPP