PageRenderTime 17ms CodeModel.GetById 12ms app.highlight 2ms RepoModel.GetById 1ms app.codeStats 0ms

/Proj4/pj_datums.c

http://github.com/route-me/route-me
C | 129 lines | 43 code | 10 blank | 76 comment | 0 complexity | af6306b0c4c3ab9817003d0b677c1481 MD5 | raw file
  1/******************************************************************************
  2 * $Id: pj_datums.c,v 1.12 2006/04/21 02:46:10 fwarmerdam Exp $
  3 *
  4 * Project:  PROJ.4
  5 * Purpose:  Built in datum list.
  6 * Author:   Frank Warmerdam, warmerda@home.com
  7 *
  8 ******************************************************************************
  9 * Copyright (c) 2000, Frank Warmerdam
 10 *
 11 * Permission is hereby granted, free of charge, to any person obtaining a
 12 * copy of this software and associated documentation files (the "Software"),
 13 * to deal in the Software without restriction, including without limitation
 14 * the rights to use, copy, modify, merge, publish, distribute, sublicense,
 15 * and/or sell copies of the Software, and to permit persons to whom the
 16 * Software is furnished to do so, subject to the following conditions:
 17 *
 18 * The above copyright notice and this permission notice shall be included
 19 * in all copies or substantial portions of the Software.
 20 *
 21 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
 22 * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 23 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
 24 * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
 25 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
 26 * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
 27 * DEALINGS IN THE SOFTWARE.
 28 ******************************************************************************
 29 *
 30 * $Log: pj_datums.c,v $
 31 * Revision 1.12  2006/04/21 02:46:10  fwarmerdam
 32 * fixed bogota direction
 33 *
 34 * Revision 1.11  2005/11/08 15:25:40  fwarmerdam
 35 * added OSGB36 transformation
 36 *
 37 * Revision 1.10  2004/10/28 16:07:55  fwarmerdam
 38 * added pj_get_*_ref() accessors
 39 *
 40 * Revision 1.9  2004/05/04 01:15:21  warmerda
 41 * Added NZGD49 datum - see bug 339
 42 *
 43 * Revision 1.8  2003/03/28 14:29:28  warmerda
 44 * Fixed ire65 definition ... use mod_airy, not modif_airy.
 45 *
 46 * Revision 1.7  2003/03/17 21:37:22  warmerda
 47 * make NAD27 grids optional, added alaska and ntv2
 48 *
 49 * Revision 1.6  2003/02/06 03:37:52  warmerda
 50 * Fixed typo in madrid prime meridian value.
 51 *
 52 * Revision 1.5  2003/01/15 14:34:55  warmerda
 53 * Added some datums as suggested by GRASS team
 54 *
 55 * Revision 1.4  2002/12/09 16:01:02  warmerda
 56 * added prime meridian support
 57 *
 58 * Revision 1.3  2002/07/08 02:32:05  warmerda
 59 * ensure clean C++ builds
 60 *
 61 * Revision 1.2  2001/04/05 19:32:41  warmerda
 62 * added ntv1_can.dat to NAD27 list
 63 *
 64 * Revision 1.1  2000/07/06 23:32:27  warmerda
 65 * New
 66 *
 67 */
 68
 69#define PJ_DATUMS__
 70
 71#include "projects.h"
 72
 73/* 
 74 * The ellipse code must match one from pj_ellps.c.  The datum id should
 75 * be kept to 12 characters or less if possible.  Use the official OGC 
 76 * datum name for the comments if available. 
 77 */
 78
 79struct PJ_DATUMS pj_datums[] = {
 80/* id       definition                               ellipse  comments */
 81/* --       ----------                               -------  -------- */
 82"WGS84",    "towgs84=0,0,0", 		             "WGS84", "",
 83"GGRS87",   "towgs84=-199.87,74.79,246.62",          "GRS80", 
 84				"Greek_Geodetic_Reference_System_1987",
 85"NAD83",    "towgs84=0,0,0",                         "GRS80", 
 86				"North_American_Datum_1983",
 87"NAD27",    "nadgrids=@conus,@alaska,@ntv2_0.gsb,@ntv1_can.dat",           
 88                                                     "clrk66", 
 89				"North_American_Datum_1927",
 90"potsdam",  "towgs84=606.0,23.0,413.0",  "bessel",  "Potsdam Rauenberg 1950 DHDN",
 91"carthage",  "towgs84=-263.0,6.0,431.0",  "clark80",  "Carthage 1934 Tunisia",
 92"hermannskogel", "towgs84=653.0,-212.0,449.0",  "bessel",  "Hermannskogel",
 93"ire65",  "towgs84=482.530,-130.596,564.557,-1.042,-0.214,-0.631,8.15",  "mod_airy",  "Ireland 1965",
 94"nzgd49",    "towgs84=59.47,-5.04,187.44,0.47,-0.1,1.024,-4.5993", "intl", "New Zealand Geodetic Datum 1949",
 95"OSGB36",    "towgs84=446.448,-125.157,542.060,0.1502,0.2470,0.8421,-20.4894", "airy", "Airy 1830",
 96NULL,       NULL,                                    NULL,    NULL 
 97};
 98
 99struct PJ_DATUMS *pj_get_datums_ref()
100
101{
102    return pj_datums;
103}
104
105struct PJ_PRIME_MERIDIANS pj_prime_meridians[] = {
106    /* id        definition                         */
107    /* --        ----------                         */
108    "greenwich", "0dE",
109    "lisbon",    "9d07'54.862\"W",
110    "paris",     "2d20'14.025\"E",
111    "bogota",    "74d04'51.3\"W",
112    "madrid",    "3d41'16.58\"W",
113    "rome",      "12d27'8.4\"E",
114    "bern",      "7d26'22.5\"E",
115    "jakarta",   "106d48'27.79\"E",
116    "ferro",     "17d40'W",
117    "brussels",  "4d22'4.71\"E",
118    "stockholm", "18d3'29.8\"E",
119    "athens",    "23d42'58.815\"E",
120    "oslo",      "10d43'22.5\"E",
121    NULL,        NULL 
122};
123
124struct PJ_PRIME_MERIDIANS *pj_get_prime_meridians_ref()
125
126{
127    return pj_prime_meridians;
128}
129