/Proj4/pj_datums.c
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